cli-4的脚手架配置
因为组件的引用,经常会遇到import * from '../../../components/common/***.vue‘这样的引入格式,太复杂了,所以可以在vue里面配置路径别名
首先在最外层,和package.json同级目录里面新建一个vue.config.js作为扩展配置。
我的目录结构:
vue.config.js:关键代码:黑体加粗部分
const path = require('path'); module.exports = { outputDir: 'docs', configureWebpack: { devServer: { open: true, // 代理 proxy: { '/netease-api': { target: 'http://localhost:3000', pathRewrite: { '/netease-api': '' }, changeOrigin: true, secure: false } } }, resolve: { // 别名 alias: { '@': path.resolve(__dirname, './src'), assets: path.resolve(__dirname, './src/assets'), components: path.resolve(__dirname, './src/components'), style: path.resolve(__dirname, './src/style'), utils: path.resolve(__dirname, './src/utils') } } }, css: { loaderOptions: { sass: { prependData: ` @import "~@/style/variables.scss"; @import "~@/style/mixin.scss"; ` } } } };
引用的时候就可以这样写了:
@代表 src 目录
比如我的路由文件:
import Vue from 'vue'; import VueRouter from 'vue-router'; import Index from '@/layout/index.vue'; Vue.use(VueRouter); const routes = [ { path: '/', name: 'Index', component: Index } // { // path: '/about', // name: 'About', // // route level code-splitting // // this generates a separate chunk (about.[hash].js) for this route // // which is lazy-loaded when the route is visited. // component: () => import(/* webpackChunkName: "about" */ '../views/About.vue') // } ]; const router = new VueRouter({ routes }); export default router;