在文件中使用此代码" reports.js"在" reports.html"的同一文件夹中,我在返回的数组中得到0个元素。不确定我是否遗漏了任何额外的声明,但我也无法使用"从meteor / mongo'中导入{Mongo};"没有错误"使用保留字' import'"。 流星版本1.2.1
JS
Tasks = new Mongo.Collection('tasks');
if(Meteor.isClient){
Template.reports.rendered = function(){
if(Session.get("animateChild")){
$(".reports-page").addClass("ng-enter");
setTimeout(function(){
$(".reports-page").addClass("ng-enter-active");
}, 300);
setTimeout(function(){
$(".reports-page").removeClass("ng-enter");
$(".reports-page").removeClass("ng-enter-active");
}, 600);
}
};
}
Template.dashboardd.helpers({
options() {
return Tasks.find({});
},
});
HTML
<Template name="dashboardd">
{{#each options}}
<p><label>{{text}}</label></p>
{{/each}}
</Template>
答案 0 :(得分:0)
AFAIK流星1.2不支持进口。瑕疵是新模块添加我流星1.3或1.4我不确定。 在处理集合时我总是使用这3个元素(如果我们采用集合声明,则使用4个元素)
你应该在服务器端做一些发布,并允许像:
Meteor.publish("Tasks ", function (selector, options) {
//you can remove condition if you dont have accounts-package
if (this.userId) {
return Tasks .find(selector || {}, options || {});
}
});
还有一些允许 再一次,如果你没有Meteor-accounts,你可以简单地 - 返回true,插入,更新等。但我不能说这不安全:P
Tasks.allow({
insert: function (userId, doc) {
return userId;
},
update: function (userId, doc) {
return userId;
},
remove: function (userId) {
return userId;
},
});
在客户端,有些订阅
Template.YourTemplateName.onCreated(function () {
this.autorun(() => {
this.subscribe('Tasks', { _id: Template.currentData()._id });
//or
this.subscribe('Tasks');
//but this solution can kill Browser when you collection will have a thousand elements. Allways try to not subscribe all collection. Only Needed fields/objects
});
});