我想在 Vue.js 应用程序中使用一些全局过滤器。我知道我需要在我的主要 Vue 实例之前定义它们,但是从代码组织的角度来看,将它们全部粘贴在“main.js”文件中对我来说似乎不正确。我如何将定义放在单独的文件中,导入到“main.js”中?为此,我无法完全理解导入/导出的内容。
原文由 John Moore 发布,翻译遵循 CC BY-SA 4.0 许可协议
我想在 Vue.js 应用程序中使用一些全局过滤器。我知道我需要在我的主要 Vue 实例之前定义它们,但是从代码组织的角度来看,将它们全部粘贴在“main.js”文件中对我来说似乎不正确。我如何将定义放在单独的文件中,导入到“main.js”中?为此,我无法完全理解导入/导出的内容。
原文由 John Moore 发布,翻译遵循 CC BY-SA 4.0 许可协议
我认为最好的方法是使用 VueJS 的 plugin
特性
filters
文件夹并将所有过滤器放在那里…… - filters
| - filter1.js
| - index.js
export default function uppercase (input) {
return input.toUpperCase();
}
index.js
导入并创建一个插件: import uppercase from './filter1';
export default {
install(Vue) {
Vue.filter('uppercase', uppercase);
}
}
import filters from './filters';
import Vue from 'vue';
Vue.use(filters);
原文由 Lucas Katayama 发布,翻译遵循 CC BY-SA 3.0 许可协议
9 回答1.7k 阅读✓ 已解决
6 回答1.5k 阅读
3 回答1.4k 阅读✓ 已解决
4 回答1.3k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
3 回答1.1k 阅读
3 回答1.3k 阅读✓ 已解决
创建一个 filters.js 文件。
将其导入您的 main.js。
这是一个工作 示例。
旁注: 如果您遇到“Vue not found”类型的错误,作为测试尝试在
new Vue()
声明 之后 导入过滤器,如下所示: