V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Ccbeango  ›  全部回复第 3 页 / 共 3 页
回复总数  55
1  2  3  
2022-06-23 10:31:19 +08:00
回复了 allzc 创建的主题 Vue.js vue 局部注册插件可行?
可以实现。文档中也说了,插件通常用来为 Vue 添加全局功能。所以,当然也可以实现局部的。
插件功能见文档: https://cn.vuejs.org/v2/guide/plugins.html
我只用了 Vue2 做了一种测试,添加 Vue 实例方法,通过把它们添加到 Vue.prototype 上实现。

在 Vue 中注册插件时通过 Vue.use()进行注册。创建子组件时,可以通过 Vue.extend()来创建 Vue 的子构造函数,内部其实时通过寄生式组合继承实现的。那么,首先通过 Vue.extend()来创建子组件,再通过子组件调用 use 方法就能实现局部注册。

如下:
<html>
<head>
<title>Hello Vue</title>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>
</head>
<body>
<div id="app"></div>
<script>
let A = Vue.extend({
template: '<div @click="test">{{msg}}</div>',
data() {
return {
msg: '我是孙子组件,点击我触发局部注册的方法$myTest'
}
},
methods: {
test() {
this.$myTest()
}
}
})

A.use({
install(Vue, options) {
Vue.prototype.$myTest = function() {
console.log('myTest...')
}
}
})

let childComp = {
template: '<div>{{msg}}<A/></div>',
components: {
A
},
props: {
info: String
},
data() {
return {
msg: '我是子组件'
}
},
created() {
console.log('child created')
},
mounted() {
console.log('child mounted')
}
}

Vue.mixin({
data () {
return {
hello: 'world'
}
},
created() {
console.log('mixin parent created')
}
})

let app = new Vue({
el: '#app',
template: `<div><h1 @click="test">{{msg}}</h1><childComp/></div>`,
data: {
msg: '我是父组件,点我会报错找不到'
},
components: {
childComp
},
methods: {
test() {
this.$myTest()
}
}
})
</script>
</body>
</html>
2022-06-08 09:28:19 +08:00
回复了 muchenlou 创建的主题 问与答 半夜时常在脑海拍电影,怎么才能中止这种不正规拍摄
我都是听相声
我之前也有,多喝水,加强运动,过了一个多月去复查没了
2022-05-20 16:24:57 +08:00
回复了 cocong 创建的主题 生活 我把基金全卖了
存个定期?
2022-05-20 16:16:19 +08:00
回复了 2696284032 创建的主题 成都 想找一个成都的女朋友!
gayhub 没给你发一个嘛
2022-05-20 10:17:09 +08:00
回复了 Haixiang 创建的主题 程序员 写了一本开源小书《Jest 实践指南》
强!
让人怀念的头像 可以看点基础命令的教程 然后自己找感兴趣的装就行了
2020-03-26 14:24:36 +08:00
回复了 abelzyp 创建的主题 Python MacOS 通过 Brew 升级完 Python 打开终端出现一堆错误。
用 py 版本管理工具多好啊。
2019-04-23 11:02:44 +08:00
回复了 14zdp 创建的主题 生活 最近很累,感觉过的浑浑噩噩的不知道要干啥
出去玩几天放松下吧,别太大压力,都会有的
杭州 php 快饿死了,转 node 了
2019-04-01 14:27:41 +08:00
回复了 KHfqLAYYS6BKJT3R 创建的主题 生活 耳鸣一个多月了,好烦
我去年八月份突发性耳聋,现在也有耳鸣
2019-03-28 09:40:24 +08:00
回复了 chunrong918 创建的主题 职场话题 电话面试聊多少分钟以下肯定是没戏了
@chunrong918 前两轮是现场面的,第三轮是总部那边的电话面
2019-03-27 15:02:52 +08:00
回复了 rick2c 创建的主题 职场话题 求助大佬 offer 选择
小公司看多小,要是很小就算了
2019-03-27 14:59:33 +08:00
回复了 chunrong918 创建的主题 职场话题 电话面试聊多少分钟以下肯定是没戏了
最近两次电话面试。一个是初面,不到半个小时,挂了;一个是三面不到半个小时。
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1677 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 31ms · UTC 16:50 · PVG 00:50 · LAX 08:50 · JFK 11:50
Developed with CodeLauncher
♥ Do have faith in what you're doing.