gpt4 book ai didi

javascript - 当组件准备就绪时,如何在 Polymer 中动态注册新属性?

转载 作者:行者123 更新时间:2023-11-28 07:27:25 25 4
gpt4 key购买 nike

问题

一旦 Web 组件准备就绪,如何动态注册新属性?

问题

假设我们有一个简单的 Web 组件,如下所示 [1]:

<polymer-element name="wc-bridge">
<script>
Polymer ('wc-bridge', {
publish: {
x: 0
},
observe: {
x: 'xfn'
},
created: function () {
this.publish.y=0;
this.observe.y='yfn';
},
xfn: function (ov, nv) {
console.log ({key:'x', old: ov, new: nv});
},
yfn: function (ov, nv) {
console.log ({key:'y', old: ov, new: nv});
},
});
</script>
</polymer-element>

[1]。 http://jsbin.com/yakisayiwi/1

可以看出,x是在设计时绑定(bind)到xfn处理程序的属性。我还想稍后在组件准备就绪时绑定(bind)一个新的属性 y 。我尝试通过丰富 publishobserve 对象以更自然的方式来做到这一点,但我的方法不起作用。我想这是因为我在消化这些物体的过程中迟到了。那么,有什么办法可以解决这个问题吗?

上下文

我确实意识到我的目标有点奇怪,但这是有原因的。我正在尝试制作一个桥接组件,当通用属性发生更改时,该组件会触发事件,其中事件名称和属性都是在配置时给出的。这是一个简单的用例:

<wc-bridge x="{{v}}" y="{{v}}"> <!-- x & y are unknown at design time -->
<wc-bridge-event on="x" fire="e1"/> <!-- x & e1 are known by digesting this -->
<wc-bridge-event on="y" fire="e2"/> <!-- y & e2 are known by digesting this -->
</wc-bridge>

未回答的相关问题

http://goo.gl/xzKPKw

最佳答案

不确定是否可以,因为属性仅加载一次。

如果我需要这样做,我只使用一个包含映射的属性,{key:value},作为值而不是像字符串这样的基元。然后观察属性并应用逻辑来了解如何处理新值。

希望这有用

关于javascript - 当组件准备就绪时,如何在 Polymer 中动态注册新属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29481753/

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