中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue.extend實現掛載到實例

發布時間:2021-06-03 16:29:08 來源:億速云 閱讀:162 作者:Leah 欄目:web開發

本篇文章給大家分享的是有關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.extend實現掛載到實例,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阜城县| 横山县| 芷江| 廊坊市| 拜泉县| 大石桥市| 泊头市| 临洮县| 克拉玛依市| 左权县| 肃宁县| 拉孜县| 休宁县| 三江| 新乐市| 张家界市| 伊宁市| 吴江市| 临武县| 岑巩县| 中西区| 石屏县| 南城县| 陆川县| 大竹县| 习水县| 隆子县| 额敏县| 罗江县| 长沙县| 吉安市| 泗洪县| 二连浩特市| 抚远县| 甘肃省| 疏附县| 九龙坡区| 敦化市| 讷河市| 大安市| 乌苏市|