【发布时间】:2018-05-13 09:34:48
【问题描述】:
如果我导入位于项目目录之外的过滤器文件(使用import Vue; Vue.filter(...) 注册它们,我会收到错误Failed to resolve filter。
如果我将文件的副本保存在应用程序的文件夹中并从那里导入,过滤器将起作用,但是...我不想要同一个文件的副本。应用程序/构建是使用 Webpack Vue-CLI 创建的。不知道如何解决这个问题。我知道这不是 webpack 构建/开发所期望的结构,但我很困惑为什么文件的位置会影响代码的功能。
\utils\filters.js
import Vue from 'vue';
Vue.filter('useless', value => {
return value;
});
\apps\my-app\my-component.vue(使用 Vue webpack CLI 构建)
<script>
import './../../../utils/filters';
</script>
是否有可能因为 filters.js 从不同的地方导入 Vue,它正在导入不同版本的 Vue?或者是否有另一种方法来注册可用于解决此问题的过滤器?
【问题讨论】:
-
我得到一个不同的错误,它无法从 filters.js 内部解析 vue(在项目结构之外,没有兄弟 node_modules 文件夹)。您使用的是哪个版本的 cli?
-
嗯..听起来很相似。你遇到了什么错误?
-
我不确定哪个版本..
error: unknown option '-v':p
标签: webpack vue.js vue-loader vue-cli vue-filter