[英]Ember - Get dynamic input value of element in component in test
So I have a simple component which looks like this: 所以我有一个简单的组件,看起来像这样:
<div class="my-div">{{ value }}</div>
{{input class="my-input" type="text" value=value}}
And I have two tests like this: 我有两个这样的测试:
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');
});
The first test passes, but the second one fails. 第一次测试通过,但第二次失败。 this.$('.my-input').attr('value')
appears to be undefined
. this.$('.my-input').attr('value')
似乎undefined
。 Why? 为什么? How can I make this test pass? 我如何才能通过此考试?
Use val()
: 使用val()
:
assert.equal(this.$('.my-input').val(), 'my test value');
API ref: jquery val API参考: jquery val
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.