Ember - 在测试中获取组件中元素的动态输入值
Ember - Get dynamic input value of element in component in test
所以我有一个简单的组件,如下所示:
<div class="my-div">{{ value }}</div>
{{input class="my-input" type="text" value=value}}
我有两个这样的测试:
test('get text from div', function(assert) {
this.set('value', 'my test value');
this.render(hbs`{{input-test value=value}}`);
assert.equal(this.$('.my-div').text(), 'my test value');
});
test('get value from input', function(assert) {
this.set('value', 'my test value');
this.render(hbs`{{input-test value=value}}`);
assert.equal(this.$('.my-input').attr('value'), 'my test value');
});
第一个测试通过,但第二个测试失败。 this.$('.my-input').attr('value')
似乎是 undefined
。为什么?我怎样才能通过这个测试?
使用val()
:
assert.equal(this.$('.my-input').val(), 'my test value');
API 参考:jquery val
所以我有一个简单的组件,如下所示:
<div class="my-div">{{ value }}</div>
{{input class="my-input" type="text" value=value}}
我有两个这样的测试:
test('get text from div', function(assert) {
this.set('value', 'my test value');
this.render(hbs`{{input-test value=value}}`);
assert.equal(this.$('.my-div').text(), 'my test value');
});
test('get value from input', function(assert) {
this.set('value', 'my test value');
this.render(hbs`{{input-test value=value}}`);
assert.equal(this.$('.my-input').attr('value'), 'my test value');
});
第一个测试通过,但第二个测试失败。 this.$('.my-input').attr('value')
似乎是 undefined
。为什么?我怎样才能通过这个测试?
使用val()
:
assert.equal(this.$('.my-input').val(), 'my test value');
API 参考:jquery val