Javascript 如何添加全局功能,如创建、方法、从Vue中的插件挂载?
在某些情况下,我不想在我的插件中使用Javascript 如何添加全局功能,如创建、方法、从Vue中的插件挂载?,javascript,vue.js,vuejs2,Javascript,Vue.js,Vuejs2,在某些情况下,我不想在我的插件中使用mixins。 我正在尝试添加自定义方法,如created(),mounted(),Methods{},以便在加载组件时访问其属性并运行自定义方法。 示例:“自定义方法” /@root/home.vue 导出默认值{ 姓名:'家', 道具:{ msg:String }, 安装的(){ // }, 方法{ // }, 自定义方法{ } } 如果将customMethod注入Vue.prototype中,则每个组件都可以访问您的customMethod,如下所示
mixins
。
我正在尝试添加自定义方法,如created()
,mounted()
,Methods{}
,以便在加载组件时访问其属性并运行自定义方法。
示例:“自定义方法”
/@root/home.vue
导出默认值{
姓名:'家',
道具:{
msg:String
},
安装的(){
//
},
方法{
//
},
自定义方法{
}
}
如果将customMethod
注入Vue.prototype
中,则每个组件都可以访问您的customMethod
,如下所示:
Vue.prototype.customMethod=function(){}
.vue文件
<script>
export default {
customMethod () { // Custom option.
console.log('custom method executed!')
},
methods: {},
created () {},
mounted () {}
}
</script>
main.js
import customMethods from 'plugins/customMethods.js'
Vue.use(customMethods)
这样做的目的是扩展所有Vue实例的默认选项,以便
该行为将应用于创建的每个Vue实例。这是
然而,目前没有记录在案
或者,这也可以通过在插件中使用全局mixin来实现。(根据您的用例,出于某种原因,您不希望使用它。)
此外,一个高级用例是在Vue.extend
期间合并自定义选项值时可能需要特殊处理。例如,创建的钩子有一个特殊的合并策略,将多个钩子函数合并到一个数组中,以便调用所有钩子函数。默认策略是简单的覆盖。如果需要自定义合并策略,则需要将其注册到Vue.config.optionMergeStregies
:
Vue.config.optionMergeStrategies.customMethod = function (parentVal, childVal) {
// return merged value.
}
不清楚你在问什么。请您澄清并举例说明?您可以在代码中看到,我想添加这样的“customMethod”,如果我们确实喜欢您的解决方案,那么我不能使用我在那里展示的方法。根据您的解决方案,我只能访问customMethod bt this.customMethod,而不像ExampleAsome中的对象。工作得很好。你能给我任何我能找到更多关于这个API的链接吗?
Vue.config.optionMergeStrategies.customMethod = function (parentVal, childVal) {
// return merged value.
}