我正在尝试流星。我只是想从一个函数调用另一个函数,它给出了参考错误,说xxx没有定义。
在我的html文件中:
<template name="hello">
{{getDaysInMonth}}
</template>
在js文件中:
Template.hello.helpers({
getDaysInMonth: function(){
var now = new Date();
return getDaysInParticularMonth(now.getMonth(), now.getFullYear()); // Meteor does not find this function
},
getDaysInParticularMonth: function(month, year) {
console.log("hey");
return 0; //just for test
},
});
输出
ReferenceError: getDaysInParticularMonth is not defined
Plz帮助。谢谢,
答案 0 :(得分:1)
在模板助手
之外声明一个方法function commonMethod(month, year) {
console.log("hey");
return 0; //just for test
}
Template.hello.helpers({
getDaysInMonth: function(){
var now = new Date();
return commonMethod(now.getMonth(), now.getFullYear()); // Meteor does not find this function
},
getDaysInParticularMonth: function(month, year) {
var now = new Date();
return commonMethod(now.getMonth(), now.getFullYear());
},
});
答案 1 :(得分:1)
有一个技巧,你可以使用meteor执行从右到左的函数调用,这样你的一个函数输出将是因为另一个函数的输入等等。我希望你有意义。
您的HTML代码
<template name="hello">
{{getDaysInParticularMonth getDaysInMonth}}
</template>
您的js代码
Template.hello.helpers({
getDaysInMonth: function(){
var now = new Date();
return [now.getMonth(), now.getFullYear()];
},
getDaysInParticularMonth: function(array) {
console.log("hey");
return 0; //just for test
},
});
但是如果你想从帮助器中调用一个函数,那么你必须在辅助块之外定义函数,这也是你可以做到的。
在我的html文件中:
<template name="hello">
{{getDaysInMonth}}
</template>
在js文件中:
Template.hello.helpers({
getDaysInMonth: function(){
var now = new Date();
return getDaysInParticularMonth(now.getMonth(), now.getFullYear());
},
});
function getDaysInParticularMonth(month, year) {
console.log("hey");
return 0; //just for test
},