繁体   English   中英

如何在onRendered中的meteor调用中访问meteor ReactiveVar变量

[英]how to access meteor ReactiveVar variable in meteor call in onRendered

我想在onRendered中获取ReactiveVar变量获取错误在传递调用'getUsersData'的结果时出现异常:TypeError:无法读取null的属性'userData'

    Template.editAdmin.onCreated(function() {
     this.userData = new ReactiveVar([]);
   });

   Template.editAdmin.onRendered(function() {
     Meteor.call("getUsersData", this.data, function(err, result) {
        Template.instance().editAdminId.set(result);
      });
   });

看起来您的代码示例与您的错误消息不符。 你提到的错误是:

TypeError: Cannot read property 'userData' of null

但从查看您的代码示例,我可以看到错误将是:

TypeError: Cannot read property 'editAdminId' of null

我假设您希望它与userData一起使用,因此我会相应地调整您的代码。 基本上,您希望确保在Method回调中使用Template.instance()时正确利用javascript闭包。 例如:

Template.editAdmin.onCreated(function () {
  this.userData = new ReactiveVar([]);
});

Template.editAdmin.onRendered(function () {
  const instance = Template.instance();
  Meteor.call("getUsersData", this.data, function (err, result) {
    instance.userData.set(result);
  });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM