使用vue-cli3.x 創建項目
之前vue-cli2創建項目后,如果自定義js插件,可以通過
import xxx from 'xxx'
Vue.prototype.$xxx = xxx
將xxx掛載到Vue原型上,但到了cli3中,根據網上資料,現在
import Vue from 'vue' 並不能返回Vue對象,如果還是使用
Vue.prototype.$xxx = xxx掛載,那在子組件中也無法通過this.$xxx進行調用
cli3中現在是通過createApp創建Vue實例對象,我們需要將js組件引入,通過props的形式傳遞(axios以前是需要掛載,現在通過VueAxios可以直接use使用)
import { createApp } from 'vue' import App from './App.vue' import router from './router' import store from './store' import axios from 'axios' import VueAxios from 'vue-axios' import xxx from './utils/xxx.js' createApp(App,{xxx:xxx}).use(store).use(router).use(VueAxios,axios).mount('#app')
在子組件中引用xxx
<template> <div class="sub"> <h1>This is an subpage</h1> </div> </template> <script> export default { name: 'Sub', props: { xxx:Object //定義prop接收 }, mounted() { this.$props.xxx.post() //可直接調用 }, methods: { } } </script> <style> </style>