2015-09-01 7 views
1

Я новичок в метеор и стараюсь сделать простое приложение для блога. Но моя функция вставки, похоже, не работает должным образом. Вот мой код.MeteorJS функция вставки не работает

Это мой шаблон

<template name="addpost"> 
    <div class="container"> 
    <h1> Add New Post</h1> 
    <form class="new-post"> 
     <label class="title"> 
     Title: 
     <input type="text" name="title" placeholder="Type to add new tasks" /> 
     </label> 
     <label class="post-content"> 
     Write here: 
     <input type="text" name="body" placeholder="Type to add new tasks" /> 
     <button class="add-post">Add Post</button> 
     </label> 

    </form> 
    </div> 
</template> 

содержание JS файл

Posts = new Meteor.Collection("posts"); 

if (Meteor.isClient) { 

    Template.addpost.events({ 
    "submit .new-post": function(event){ 

     var title = event.target.title.value; 
     var body = event.target.body.value; 

     Meteor.call("addPost", title, body); 
    } 
    }); 
} 


Meteor.methods({ 
    addPost: function(title, body){ 
    Posts.insert({ 
     title: title, 
     body: body, 
     createdAt : new Date() 
    }); 
    } 
}); 

Я не устранили autopublish и небезопасные пакеты. И ниже - вывод запроса mongoDB.

enter image description here

ответ

2

По умолчанию, когда вы представляете форму он делает еще один запрос HTTP, который будет перезагрузить страницу и остановить все, что метеорит делает. Чтобы этого избежать, вам необходимо предотвратить действие по умолчанию:

Template.addpost.events({ 
    submit: function(event) { 
    event.preventDefault(); 
    // the rest of your code goes here 
    } 
}); 

Кроме того, ваш код работал правильно для меня. Вы можете проверить это с помощью: Posts.find().fetch() либо в веб-консоли, либо через meteor shell.

+0

Веб-консоль теперь говорит: «Ошибка при вызове метода« addPost »: метод не найден [404]« – TA3

+0

Возможно, у вас возникла некоторая опечатка после того, как вы разместили вопрос, потому что это сработало для меня. Если вы можете воспроизвести проблему на [meteorpad] (http://meteorpad.com/) или дать ссылку на репозиторий github, я могу посмотреть еще раз. –

+0

github repo: https: //github.com/TA-3/blog-app – TA3

Смежные вопросы