Vue中引用文件配置絕對路徑,不在擔心文件層級關(guān)系

引用文件時,將其相對路徑配置成絕對路徑,并自定義別名用來替換原文件的相對路徑,容易識別,不用再考慮文件層級嵌套問題,不用再寫那么長相對路徑

配置前:

import Login from './src/components/Login.vue'
import userInfo from './src/view/user/userInfo.vue'
import  './src/assets/style/base.css'

配置后:

import Login from '@/components/Login.vue'
import userInfo from 'view/user/userInfo.vue'
import  'assets/style/base.css'
在vue.config.js中配置

(1)引入node里面加載的path模塊

const path = require('path')

(2)封裝resolve 函數(shù),使用__dirname獲取當前文件所在的文件目錄

function resolve (dir){
    return path.join(__dirname,dir)   //path.join(__dirname) 設(shè)置絕對路徑
}

__dirname:當前配置的文件所在的絕對路徑(雙下劃線)
dir:傳入的文件夾

(3)在module.exports中設(shè)置別名

module.expots = {
    //...
    chainWebpack :(config) => {
        config.resolve.alias
            .set('@', resolve('./src'))
            .set('views',resolve('./src/view'))
            .set('assets',resolve('./src/assets'))
            //...可以繼續(xù)自定義別名
             //set 第一個參數(shù):設(shè)置的別名;第二個參數(shù):原來默認的路徑
    }
    //...
}

此時
@:表示 './src'
views: 表示 './src/view'
assets: 表示 './src/assets'
set 第一個參數(shù):表示替換默認路徑設(shè)置的別名;第二個參數(shù):表示原來默認的路徑

vue.config.js中配置的全部代碼
const path = require('path')
function resolve (dir){
    return path.join(__dirname,dir)   //path.join(__dirname) 設(shè)置絕對路徑 雙下劃線
}

module.expots = {
    //...
    chainWepack :(config) => {
        config.resolve.alias
            .set('@', resolve('./src'))
            .set('views',resolve('./src/view'))
            .set('assets',resolve('./src/assets'))
            //...可以繼續(xù)自定義別名
             //set 第一個參數(shù):設(shè)置的別名;第二個參數(shù):原來默認的路徑
    }
    //...
}

配置完成,記得重啟服務(wù)生效!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容