小编yxu*_*296的帖子

如何测试从VueX监视计算属性的Vue观察器?

假设我具有以下组件:

import { mapState } from 'vuex';
import externalDependency from '...';

export default {
  name: 'Foo',
  computed: {
    ...mapState(['bar'])
  },
  watch: {
    bar () {
     externalDependency.doThing(this.bar);
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

在测试时,我想确保使用externalDependency.doThing()调用bar(来自vuex状态),如下所示:

it('should call externalDependency.doThing with bar', () => {
  const wrapper = mount(Foo);
  const spy = jest.spyOn(externalDependency, 'doThing');

  wrapper.setComputed({bar: 'baz'});

  expect(spy).toHaveBeenCalledWith('baz');
});
Run Code Online (Sandbox Code Playgroud)

Vue的test-utils有一个setComputed方法,该方法可以让我目前对其进行测试,但是我不断收到警告,称setComputed将很快被删除,而且我不知道该如何进行测试:

https://github.com/vuejs/vue-test-utils/issues/331

javascript vue.js vuex vue-test-utils

15
推荐指数
2
解决办法
1710
查看次数

标签 统计

javascript ×1

vue-test-utils ×1

vue.js ×1

vuex ×1