Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从其他模板相关函数调用helpers函数_Javascript_Meteor_Handlebars.js_Meteor Blaze - Fatal编程技术网

Javascript 从其他模板相关函数调用helpers函数

Javascript 从其他模板相关函数调用helpers函数,javascript,meteor,handlebars.js,meteor-blaze,Javascript,Meteor,Handlebars.js,Meteor Blaze,从Template.myTemplate.rendered函数(或从其他模板函数),我想调用其他util函数。不知道如何用流星的方式来做 我试过了 Template.myTemplate.rendered = function(){ console.log("chat Interface rendered"); Template.myTemplate.__helpers.get('someFunction'); }; Template.myTemplate.helpers(

Template.myTemplate.rendered函数(或从其他模板函数),我想调用其他util函数。不知道如何用流星的方式来做

我试过了

 Template.myTemplate.rendered = function(){
   console.log("chat Interface rendered");
   Template.myTemplate.__helpers.get('someFunction');
 };


 Template.myTemplate.helpers({
   'isEditable': function () {
     return Session.get('editable');
   },
   'someFunction':function () {
     console.log("someFunctionis called");
     //More stuff here

   }
});

这并没有像预期的那样起作用。有什么标准的方法吗?

在我看来,你误用了。通常,它们用于将数据导入模板,而不是控制UI元素

因此,我建议创建一个常规JavaScript函数,然后在
onRendered
回调中调用它:

function disableChatBtn() {
  console.log("disableChatBtn is called");
  $('#btn-chat').prop('disabled', true);
}
请注意:
Template.myTemplate.rendered
在Meteor 1.0.4.2版(及更高版本)中不推荐使用,请改用

例如:

Template.myTemplate.onRendered(function() {
  console.log("chat Interface rendered");
  disableChatBtn();
});

您可以创建meteor方法并在代码中的任何地方使用它。也可以从其他方法调用方法

Meteor.methods({
  someMethod: function (param) {
    //do stuff
  }
});

var result = Meteor.call('someMethod', param);

您可以创建一个全局函数并在不同的模板上调用它。您能为这个问题提供更多的上下文吗?我认为您可以使用会话变量来切换按钮的禁用状态,而不是您尝试执行的操作。我们如何知道您是否未提供
其他util函数
您尝试执行的操作实际上没有任何意义。如果您希望在加载时禁用按钮,您可能应该直接将“disabled”属性放在HTML上。您是否试图在“聊天界面呈现”后禁用按钮?或者启用它?如果您想切换按钮状态,可以在模板帮助程序和事件中使用会话变量。我绝对不会排除这个选项。@durrr:这是一个非常简单的例子,在这里切换按钮,如果还有其他事情要做呢,我问的是概念、方式。@monda这个评论是关于控制UI元素的。对于你的问题,我已经建议创建一个全局函数