我正在开发一个Meteor应用程序,该应用程序应该满足数据列表,其中一些数据存储在JSON文件中作为进程的一部分。但是,我没有成功将其数据导入模板。所以我想知道如何解决这个问题。
我已将JSON文件存储到panel / skills.json中,它基本上看起来像这样:
{"skills":[
{"value":".NET Compact Framework"},
{"value":".NET Framework"},
{"value":".NET para Web"}
]}
这就是HTML文件的样子:
<div class="required">
<input type="text" class="form-control" list="tags">
<datalist class="form-control" id="tags" name="tags">
{{#each skills}}
<option value={{value}}></option>
{{/each}}
</datalist>
</div>
有没有办法将JSON文件转换为.js存档,并使用帮助程序加载它?谢谢:)
答案 0 :(得分:1)
我没试过,但这会奏效。
示例:
var json = require('panel/skills.json');
Template.myTemplate.onCreated(function() {
this.skills = new ReactiveVar(json);
});
Template.myTemplate.helpers({
skills: function (){
return Template.instance().skills.get();
}
});
答案 1 :(得分:0)
使用可以在Meteor.methods中创建方法
meteor.methods({
getSkills: function (){
var Skills = JSON.parse(Assets.getText("parse/skills.json"));
return Skills.skills;
}
})
现在在模板中调用此方法
Template.skills.helpers({
skills: function (){
Meteor.call('getSkills', function(err, result){
return result;
}
}
})
我还没有测试过,但我发现使用过这样的东西。