Javascript Vue.js+;js-为什么在对head()方法进行单元测试时,计算属性未定义?
我有一个Vue.js+Nuxt.js组件,它有一个方法: 测试失败,并显示以下消息: AssertionError:预期未定义为等于“我的标题” 为什么即使我模拟计算属性,它仍然没有定义Javascript Vue.js+;js-为什么在对head()方法进行单元测试时,计算属性未定义?,javascript,unit-testing,vue.js,nuxt.js,Javascript,Unit Testing,Vue.js,Nuxt.js,我有一个Vue.js+Nuxt.js组件,它有一个方法: 测试失败,并显示以下消息: AssertionError:预期未定义为等于“我的标题” 为什么即使我模拟计算属性,它仍然没有定义 我通过target.vm.$options调用head()方法与此有关吗?您需要将上下文传递到head调用中 const-actual=target.vm.$options.head.call(target.vm)这让我头疼。。。非常感谢这个解决方案。 <script> export def
我通过
target.vm.$options
调用head()
方法与此有关吗?您需要将上下文传递到head调用中
const-actual=target.vm.$options.head.call(target.vm)代码>这让我头疼。。。非常感谢这个解决方案。
<script>
export default {
name: 'my-page',
head() {
return { title: `${this.currentPage}` };
},
...
}
</script>
it('should set the title to "my page"', () => {
const options = {
computed:{
currentPage: () => {
return 'My Title';
}
}
};
const target = shallowMount(MyPage, options);
const actual = target.vm.$options.head();
expect(actual.title).to.equal("My Title");
});