Vue.extend实现挂载到实例上的方法


Posted in Javascript onMay 01, 2019

本文实例讲述了Vue.extend实现挂载到实例上的方法。分享给大家供大家参考,具体如下:

这里主要是做个笔记

根据官网的说法,Vue.extend:是使用基础 Vue 构造器,创建一个“子类”。参数是一个包含组件选项的对象。

官网的用法是:

<div id="mount-point"></div>
// 创建构造器
var Profile = Vue.extend({
 template: '<p>{{firstName}} {{lastName}} aka {{alias}}</p>',
 data: function () {
  return {
   firstName: 'Walter',
   lastName: 'White',
   alias: 'Heisenberg'
  }
 }
})
// 创建 Profile 实例,并挂载到一个元素上。
new Profile().$mount('#mount-point')

最终结果如下:

<p>Walter White aka Heisenberg</p>

感觉这样写不太美观

于是改为下面这样写:

在文件夹./src/component/expend,新建两个文件:main.js和main.vue

main.vue就是你的组件,爱怎么写怎么写

main.js是把组件挂载到实例上,代码如下:

import Vue from 'Vue'
import Main from './main.vue'
let Builder = Vue.extend(Main)
export default {
  install (vue) {
    vue.prototype.$YOURNAME = this.getComponent
  },
  getComponent (param) {
    let instance = new Builder({
      propsData: { param }
    })
    instance.vm = instance.$mount()
    document.body.appendChild(instance.vm.$el)
    return instance
  }
}

在入口文件main.js,添加代码:

import Vue from 'Vue'
import myComponent from './src/component/expend/main.js'
Vue.use(myComponent)

然后在页面中就可以这样使用了:

this.$YOURNAME(param)

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
js类后台管理菜单类-MenuSwitch
Sep 12 Javascript
jquery ajaxSubmit 异步提交的简单实现
Feb 28 Javascript
JavaScript中对象property的读取和写入方法介绍
Dec 30 Javascript
基于JavaScript如何实现私有成员的语法特征及私有成员的实现方式
Oct 28 Javascript
教你用javascript实现随机标签云效果_附代码
Mar 16 Javascript
JavaScript对Json的增删改属性详解
Jun 02 Javascript
jQueryUI Datepicker组件设置日期高亮
Oct 13 Javascript
Vue resource中的GET与POST请求的实例代码
Jul 21 Javascript
JavaScript实现的数字与字符串转换功能示例
Aug 23 Javascript
Node.js使用MySQL连接池的方法实例
Feb 11 Javascript
Vue 使用中的小技巧
Apr 26 Javascript
详解js跨域请求的两种方式,支持post请求
May 05 Javascript
JS html事件冒泡和事件捕获操作示例
May 01 #Javascript
JS实现的贪吃蛇游戏案例详解
May 01 #Javascript
javascript原型链学习记录之继承实现方式分析
May 01 #Javascript
微信小程序实现卡片左右滑动效果的示例代码
May 01 #Javascript
微信小程序常见页面跳转操作简单示例
May 01 #Javascript
浅谈对于react-thunk中间件的简单理解
May 01 #Javascript
vue增加强缓存和版本号的实现方法
May 01 #Javascript
You might like
php imagecreatetruecolor 创建高清和透明图片代码小结
2010/05/15 PHP
使用PHP静态变量当缓存的方法
2013/11/13 PHP
PHP5.3安装Zend Guard Loader图文教程
2014/09/29 PHP
PHP设计模式之工厂模式与单例模式
2016/09/28 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
PHP设计模式之策略模式原理与用法实例分析
2019/04/04 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
Javascript 复制数组实现代码
2009/11/26 Javascript
基于Jquery的回车成tab焦点切换效果代码(Enter To Tab )
2010/11/14 Javascript
jQuery链式操作如何实现以及为什么要用链式操作
2013/01/17 Javascript
javascript的 {} 语句块详解
2016/02/27 Javascript
轻松掌握JavaScript单例模式
2016/08/25 Javascript
可输入文字查找ajax下拉框控件 ComBox的实现方法
2016/10/25 Javascript
JavaScript 计算笛卡尔积实例详解
2016/12/02 Javascript
详解react-native-fs插件的使用以及遇到的坑
2017/09/12 Javascript
简述Angular 5 快速入门
2017/11/04 Javascript
使用 Vue 绑定单个或多个 Class 名的实例代码
2018/01/08 Javascript
用原生JS实现爱奇艺首页导航栏代码实例
2019/09/19 Javascript
封装Vue Element的table表格组件的示例详解
2020/08/19 Javascript
python读取excel指定列数据并写入到新的excel方法
2018/07/10 Python
解决python给列表里添加字典时被最后一个覆盖的问题
2019/01/21 Python
详解Python3网络爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果
2019/05/07 Python
pycharm如何实现跨目录调用文件
2020/02/28 Python
Python对象的属性访问过程详解
2020/03/05 Python
python如何快速生成时间戳
2020/07/21 Python
什么是URL
2015/12/13 面试题
师范学院毕业生求职信范文
2013/12/26 职场文书
客服部工作职责范本
2014/02/14 职场文书
出生公证委托书
2014/04/03 职场文书
教师四风对照检查材料思想汇报
2014/09/17 职场文书
2014年妇幼卫生工作总结
2014/12/09 职场文书
巾帼文明岗汇报材料
2014/12/24 职场文书
化妆品促销活动总结
2015/05/07 职场文书
2016秋季运动会前导词
2015/11/25 职场文书
少先队大队委竞选口号
2015/12/25 职场文书
Python使用scapy模块发包收包
2021/05/07 Python