[vue-test-utils]: wrapper.setChecked() 必须传递一个布尔值
[vue-test-utils]: wrapper.setChecked() must be passed a boolean
使用 Vue,我有一些无线电输入:
<label>
<input
v-model="myProperty"
v-bind:value="true"
name="myProperty"
type="radio"
> True
</label>
<label>
<input
v-model="myProperty"
v-validate="input.rules ? input.rules : ''"
v-bind:value="false"
name="myProperty"
type="radio"
> False
</label>
我正在用 vue-test-utils
和 jest
测试它们,其中我 select 并为我的字段分配一个值:
let myProperty = wrapper.find('[name="myProperty"]')
myProperty.setChecked(false)
根据 documentation,它似乎应该是这样工作的。但是我得到这个错误:
[vue-test-utils]: wrapper.setChecked() must be passed a boolean
然而,当我将值设置为 true
而不是 false
时,它起作用了。作为实验,我尝试将值设置为字符串 'false'
:
myProperty.setChecked('false')
然后我得到这个错误:
[vue-test-utils]: wrapper.setChecked() must be passed a boolean
那么当值为 false
时,我应该如何 select 我想要的 vue-test-utils
无线电输入?如果我的收音机输入有值字符串怎么办?
您需要在群组中的另一个无线电输入上呼叫 setChecked
。这将取消选中一组中的所有其他单选按钮,因为一次只能选中一个:
wrapper.find('[name="other property"]').setChecked(true)
在 Vue Test Utils 中,我们不允许将单选按钮 checked
设置为 false,因为这使您能够将单选组置于选中 none 的状态,尽管这是不可能的作为用户。
也许我们应该重新考虑这个设计决定。如果您有用例,请在 Vue Test Utils GitHub 存储库中创建功能请求。
使用 Vue,我有一些无线电输入:
<label>
<input
v-model="myProperty"
v-bind:value="true"
name="myProperty"
type="radio"
> True
</label>
<label>
<input
v-model="myProperty"
v-validate="input.rules ? input.rules : ''"
v-bind:value="false"
name="myProperty"
type="radio"
> False
</label>
我正在用 vue-test-utils
和 jest
测试它们,其中我 select 并为我的字段分配一个值:
let myProperty = wrapper.find('[name="myProperty"]')
myProperty.setChecked(false)
根据 documentation,它似乎应该是这样工作的。但是我得到这个错误:
[vue-test-utils]: wrapper.setChecked() must be passed a boolean
然而,当我将值设置为 true
而不是 false
时,它起作用了。作为实验,我尝试将值设置为字符串 'false'
:
myProperty.setChecked('false')
然后我得到这个错误:
[vue-test-utils]: wrapper.setChecked() must be passed a boolean
那么当值为 false
时,我应该如何 select 我想要的 vue-test-utils
无线电输入?如果我的收音机输入有值字符串怎么办?
您需要在群组中的另一个无线电输入上呼叫 setChecked
。这将取消选中一组中的所有其他单选按钮,因为一次只能选中一个:
wrapper.find('[name="other property"]').setChecked(true)
在 Vue Test Utils 中,我们不允许将单选按钮 checked
设置为 false,因为这使您能够将单选组置于选中 none 的状态,尽管这是不可能的作为用户。
也许我们应该重新考虑这个设计决定。如果您有用例,请在 Vue Test Utils GitHub 存储库中创建功能请求。