0

En supposant que j'ai tout fait comme aldeed décrit here pour créer un modèle de formulaire personnalisé. Qu'est-ce que j'ai oublié ou où est l'erreur que l'étiquette autoform n'est pas présente?Exception dans le rappel différé: Erreur: Aucun modèle: autoform

html Actual examle:

<template name="afType_talkBar"> 
    {{#autoform schema=Schema.Nachrichten id="sendMessageForm" type="insert"}} 
    <fieldset class="clubChat__input"> 
    <div class="clubChat__message-bar"> 
     {{> afQuickField name='chatroomId'}} 
     {{> afQuickField name='userName'}} 
     <div class="form-group{{#if afFieldIsInvalid name='content'}} has-error{{/if}}"> 
       <div class="input-group"> 
       <span class="input-group-addon">$</span> 
       {{> afFieldInput name='content'}} 
       <span class="input-group-addon">/each</span> 
       </div> 
       {{#if afFieldIsInvalid name='content'}} 
       <span class="help-block">{{afFieldMessage name='content'}}</span> 
       {{/if}} 
     </div> 
     <input type="submit" value="{{_ 'chatAction.send'}}"> 
    </div> 
    </fieldset> 
    {{/autoform}} 
</template> 

Et le talkBar.js côté client

import './talkBar.html'; 

// Import necessary js Packages 
import { Meteor } from 'meteor/meteor'; 
import { Template } from 'meteor/templating'; 

import { Nachrichten } from '../../../api/nachrichten/nachrichten'; 

question bonus. Insertion

Template.talkBar.helpers({ 
    nachrichtenCollection(){ 
    return Nachrichten; 
    } 
}); 

résultats dans un Uncaught TypeError: Impossible de lire la propriété « aides » undefined

On dirait que je suis manque quelque chose de fondamental

Répondre

0

Erreur Typo au lieu de AutoForm il doit être automatiquement F ORM

code correct devrait ressembler à ceci:

<template name="afType_talkBar"> 
    {{#autoForm schema=Schema.Nachrichten id="sendMessageForm" type="insert"}} 
    <fieldset class="clubChat__input"> 
    <div class="clubChat__message-bar"> 
     {{> afQuickField name='chatroomId'}} 
     {{> afQuickField name='userName'}} 
     <div class="form-group{{#if afFieldIsInvalid name='content'}} has-error{{/if}}"> 
       <div class="input-group"> 
       <span class="input-group-addon">$</span> 
       {{> afFieldInput name='content'}} 
       <span class="input-group-addon">/each</span> 
       </div> 
       {{#if afFieldIsInvalid name='content'}} 
       <span class="help-block">{{afFieldMessage name='content'}}</span> 
       {{/if}} 
     </div> 
     <input type="submit" value="{{_ 'chatAction.send'}}"> 
    </div> 
    </fieldset> 
    {{/autoForm}} 
</template> 
0

Votre nom de modèle dans la définition d'aide est incorrecte. Le modèle est comme ci-dessous

Template.Template_Name.helpers({});

Vous avez nommé nom du modèle incorrect. Il doit être comme ci-dessous,

Template.afType_talkBar.helpers({});

vous avez également utilisé chemin relatif pendant que vous déclarez une collection dans le fichier client de JS. Vous pouvez utiliser comme ci-dessous,

import { nachrichten } from '/import/api/nachrichten/nachrichten.js'; Ceci est une meilleure convention parce que vous pouvez couper coller votre fichier js n'importe où ailleurs selon le besoin et vous pouvez également créer de nombreux fichiers js et les mélanger à l'avenir, de sorte que le chemin change selon votre déclaration.

+0

Merci pour clarifier cette partie. N'a pas awar que le nom du modèle se réfère au nom des assistants. Mais encore l'autoform ne rendra pas. – theFan

+0

Quelle est l'erreur? Vérifiez la console si une chose apparaît. Mettez à jour la question avec les détails de l'erreur. Je vous ai donné la réponse à votre question. Si maintenant l'erreur est pour autoform alors c'est un autre problème. –

+0

L'erreur est/était le titre de cette question. C'était en effet quelque chose de fondamental. StackOverflow devrait installer un seau de typo;) – theFan