gpt4 book ai didi

dart - @observable和@published有什么区别

转载 作者:行者123 更新时间:2023-12-03 02:57:50 25 4
gpt4 key购买 nike

在Polymer 0.10.1之前,@published批注在声明它的Polymer元素上创建了一个属性。
随聚合物0.11.0改变。从那时起,需要@PublishedProperty(reflect: true)来使字段值可用作属性。

似乎自此更新以来@published@observable具有相同的效果。我想念什么吗?

最佳答案

@published属性仍然允许您声明性地将值用作HTML中的属性。那你仍然可以做:

<my-element myprop="{{hello}}"></my-element>

所做的更改是通过 attributes属性以过程方式访问值,然后必须包括 @PublishedProperty(reflect: true)。 (如果您直接与CustomTag类进行交互,则情况并非如此。

需要 @PublishedProperty(reflect: true):

var x = querySelector('x-foo');
x.bar = "hi";
// ...
print(x.attributes["bar"]);

这也需要 @PublishedProperty(reflect: true):

/* CSS */
x-foo[bar="hi"] { background-color: blue; }

这不是:

XFoo x = querySelector('x-foo');
x.bar = "hi";
...
print(x.bar);

这是从 New Polymer Release 0.12.0讨论组得出的

关于dart - @observable和@published有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25769768/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com