gpt4 book ai didi

javascript - 为什么此绑定(bind)仅在我更改值的前三次有效?

转载 作者:行者123 更新时间:2023-11-30 16:43:33 25 4
gpt4 key购买 nike

考虑以下片段:

var ITEMS = ["Item 1", "Item 2"]

window.App = Ember.Application.create();
window.App.ApplicationController = Ember.Controller.extend({
sItems: ITEMS,
sValue: ITEMS[0],
sLabel: Ember.computed('sValue', function() {
return this.get('sValue') == ITEMS[0] ?
"You picked item 1!" :
"You picked item 2!";
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://builds.emberjs.com/tags/v1.13.5/ember.min.js"></script>
<script src="http://builds.emberjs.com/release/ember-template-compiler.js"></script>

<script type="text/x-handlebars">
{{view "select" content=sItems value=sValue}}
{{sLabel}}
</script>

更改 <select> 的值后三次,它不再触发对 sValue 的更改属性(property)。因此,标签不再更改。

我已经能够在 OS X 上的 Chrome 和 Safari、Windows 8.1 上的 IE11 以及 Linux 上的 Firefox 和 Chromium 中重现这一点。 (您应该也可以通过运行上面的代码片段来重现它。)

我做错了什么?


编辑:这似乎是 a known bug在 Ember.js v1.13.4 中引入。

最佳答案

关于javascript - 为什么此绑定(bind)仅在我更改值的前三次有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31569109/

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