【问题标题】:How to access meteor call in Template event如何在模板事件中访问流星呼叫
【发布时间】:2015-05-26 12:39:41
【问题描述】:

我正在进行流星调用并在客户端获取数组作为回报。

我想在 Template 内的事件中使用此数组,但在流星调用之外无法识别该数组。

如何在模板事件中访问这个数组?

    if (Meteor.isClient) {   
        result=[];
        Meteor.call('getApiResult', function (err, result) {
            if (result) {
                console.log("reached meteor call")
                console.log(result);

            }
        });

     Template.dpVar.events = {
            'click .addproduct' : function  (err) {

                for (i = 0; i < result.length; i++) {
                    var Temp_Name = result[i];
                    var Temp_Val = document.getElementById(Temp_Name).value
                    console.log("temp name is ", Temp_Name);
                    productDB.insert({ Temp_Name: Temp_Val});
                    console.log("temp val is ", Temp_Val);
                }

            }
}//Client Ends

【问题讨论】:

    标签: meteor


    【解决方案1】:

    您没有设置result,您正在重载名称;-)

    试试这个,如果不行,把result = []移到全局范围内。

    if (Meteor.isClient) {
        result = [];
        Meteor.call('getApiResult', function (err, res) {
            if (res) {
                console.log("reached meteor call")
                console.log(res);
                result = res;
            }
        });
    
        Template.dpVar.events = {
            'click .addproduct' : function  (err) {         
                for (i = 0; i < result.length; i++) {
                    var Temp_Name = result[i];
                    var Temp_Val = document.getElementById(Temp_Name).value
                    console.log("temp name is ", Temp_Name);
                    productDB.insert({ Temp_Name: Temp_Val});
                    console.log("temp val is ", Temp_Val);
                }
    
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-07
      • 2015-04-07
      • 1970-01-01
      • 2019-10-12
      • 2015-12-18
      • 1970-01-01
      • 2018-02-01
      • 2017-03-14
      相关资源
      最近更新 更多