我正在开发一个 Vue Js 2 应用程序,我目前正在构建商店和不同的模块来分离代码。有没有办法编写一个通用函数并在所有模块之间共享?
例如,我有一个函数 truncate() 需要在 customer.js、cart.js、address.js 中使用。如果我在 store.js 中声明它并尝试在模块中使用它,它会抛出错误。出口和进口是唯一的方式吗?共享功能的最佳方式是什么?
原文由 Vishwas 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在开发一个 Vue Js 2 应用程序,我目前正在构建商店和不同的模块来分离代码。有没有办法编写一个通用函数并在所有模块之间共享?
例如,我有一个函数 truncate() 需要在 customer.js、cart.js、address.js 中使用。如果我在 store.js 中声明它并尝试在模块中使用它,它会抛出错误。出口和进口是唯一的方式吗?共享功能的最佳方式是什么?
原文由 Vishwas 发布,翻译遵循 CC BY-SA 4.0 许可协议
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
6 回答820 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
最简单的情况自然是在 js 文件中定义一个常规函数,然后在任何需要的地方导入/使用它。
不过,有一些特定于 Vue 的方法:
对于 Vuex 模块 中常见的可重用功能,您可以使用 Vuex 插件。
检查下面的示例。注意根存储的用法:
plugins: [myTruncatePlugin]
。对于 Vue 实例中常见的可重用函数,您可以使用 Mixins 。对于最一般的情况,有 Global Mixin (小心使用):