如何解决我如何设置作为数组传递给内部渲染组件以进行 ember 测试的类属性,就像目前使用 set dont pass array 一样?
用户定义在组件类上
// recipients-component.js
export default class RecipientsComponent extends Component {
get users () {
return [{name:'jerry'},{name:'ana'},{name:'erik'}]
}
get selectedUsers () {
return [{name:'jerry'}]
}
}
这个用户被传递给一个 powerSlectMultiple 组件
// recipients-component.hbs
<div class="card-row">
<h3>Recipients</>
<div class="card-row">
<PowerSelectMultiple
@placeholder="Select recipient(s)"
@searchEnabled={{true}}
@selected={{this.selectedUsers}}
@options={{this.users}}
@onChange={{fn (mut this.selectedUsers)}}
@onKeydown={{this.handleKeydown}}
@searchField="name"
as |user|
>
{{user.name}}
</PowerSelectMultiple>
</div>
当我使用 this.set() 创建用户数组时不渲染用户数组
- 有没有办法传递或创建用户数组来传递到这个组件中?
// recipients-component-test.js
import { module,test } from 'qunit';
import { setupRenderingTest } from 'ember-qunit';
import hbs from 'htmlbars-inline-precompile';
module('Integration | Component | recipients-component',function (hooks) {
setupRenderingTest(hooks);
test('it renders users',function (assert) {
this.set('users',[{name:'jerry'},{name:'erik'}]); // not working
await render(hbs`<Recipients-component />`);
assert.equal(this.$('h3').text().trim(),'Recipients');
});
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。