Ember.js:测试时组件属性未重置

2024-01-13

我目前正在尝试对嵌套路由进行验收测试,该路由使用相同的组件两次,但具有不同的参数。当我正常运行它时,效果很好,但是当我运行验收测试时,我注意到组件的参数没有更新,这导致我的测试失败。这是一些示例代码:

In index.hbs I have:

{{index-view model=model type='location'}}

My index-view组件看起来像这样:

<h1>{{title}} List</h1>

{{listing-table model=model type=type}}

通过单击中的一个元素listing-table,然后我去locations.show路线,其中包含link-to the locations.show.devices路线。这locations.show.devices路线包含:

{{listing-table model=model.devices type='device' exclude='locationName'}}

然而,在我的验收测试中,我可以看到(通过在组件的 javascript 中回显这些属性)model and type正在更新中,exclude始终设置为最初调用组件时设置的值。

现在,我已经检查过(通过console.log())无论组件是否被重用,我都可以看到init () and didDestroyElement ()被调用两次,这意味着组件的整个生命周期经历两次。但是,我真的无法理解为什么我的exclude参数根本没有更新,为什么这只在验收测试时发生?

(当然它适用于 Twiddle,但不适用于现实生活!)。


{{listing-table model=model.devices type='device' exclude='locationName'}}

你传递了一定的值"locationName"(字符串)不链接到该属性.locationName的 组件 . (我是关于周围的引号locationName )

你知道吗?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ember.js:测试时组件属性未重置 的相关文章

随机推荐