0

在编译并安装一个读取从其父级传递的 opts 属性的标签后,当传递的 opts 更新时,我无法让孩子读取要更新的属性。

要查看问题的演示,请运行:

git clone https://github.com/shouston3/learn-riot.git && cd learn-riot/demo-problem

npm i && npm start

visit http://localhost:3333

当您增加计数器时,未编译的计数器将更新,

但是编译的不会

我怎样才能得到这个更新?

在此先感谢您的帮助

4

1 回答 1

2

假设您要增加父标签和子标签,我简化了您的代码。我删除了 var self=this,而不是在这种情况下不需要,并将此分配更改self.opts.count = ++self.opts.count;this.count = ++this.count

问题是您试图将数据分配给 opts,这不是它的工作方式。要将数据传递给孩子,您只需传递标签中的参数<count count={this.count}></count>(可能更好地为标签和变量使用不同的名称)

这是代码

  <demo>
    <button onclick={increment}>increment</button>

    <h1>Uncompiled count: {this.count}</h1>

    <count count={this.count}></count>

    this.count = 0;

    increment () {
      this.count = ++this.count;
      console.log('count: ', this.count);
      this.update();
    }

  </demo>

这是示例 https://jsfiddle.net/vitomd/mjqa2d5j/4/

于 2016-09-10T18:07:22.580 回答