如何在HTML嵌入一个Vue.js窗口部件?

18-09-16 banq
    

这是个演示如何将完整Vue.js(route,action和状态管理)作为窗口部件widget嵌入到HTML。HTML只绑定app.js和app.css,嵌入widget作为一个HTML组件,里面有完整的Vue.js功能,在这个:

<link href="http://vuidget-source.danajanoskova.sk/css/app.css" rel=stylesheet/> 

<vue-widget title="Vuidget live example"></vue-widget> 


<p>

这是使用vue-custom-element部件实现的:

npm install vue-custom-element --save

src/main.js

import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store/index'
import vueCustomElement from 'vue-custom-element'
Vue.use(vueCustomElement)
App.store = store
App.router = router
Vue.customElement('vue-widget', App)
<p>

注意最后一句:Vue.customElement('vue-widget', App),vue-widget是HTML中标签<vue-widget></vue-widget>名称。

这里不用使用new Vue();而是调用Vue.customElement();

运行:

npm run build

在构建目录dist下我们只需要 app.js。

DJanoskova/Vuidget: A full-functioning Vue.js (rou