使用vue-test-utils

时间:2018-10-08 18:00:13

标签: vue.js vue-component vue-test-utils

如何使用全局应用的过滤器配置组件安装?我认为这是传递给createLocalVue的某些选项,但我在文档中看不到。

使用全局过滤器时,运行套件时控制台中会出现以下警告:

[Vue warn]: Failed to resolve filter: filterName

wrapper.html()处的字符串包含预先计算的值,但未应用过滤器,例如

{{ 'a string' | throughFilter }}

仍然

'a string'

该过滤器可以在浏览器中运行,并且可以作为功能对其进行独立测试,但是我不想附带警告代码。

2 个答案:

答案 0 :(得分:4)

createLocalVue返回一个Vue构造函数,其中包括用于注册过滤器的filter方法:

import { createLocalVue, mount } from '@vue/test-utils'

const localVue = createLocalVue()

localVue.filter('myFilter', myFilter)

mount(TestComponent, {
  localVue
})

或者,您可以在安装组件之前在Vue构造函数上全局安装过滤器:

import Vue from 'vue'

Vue.filter('myFilter', myFilter)

mount(TestComponent)

答案 1 :(得分:1)

如果您以la Nuxt的方式使用过滤脚本,也可以导入过滤脚本。

import "@/plugins/filters";

...your test