美文网首页Vue
Vue中引用文件配置绝对路径,不在担心文件层级关系

Vue中引用文件配置绝对路径,不在担心文件层级关系

作者: 回到唐朝做IT | 来源:发表于2020-03-08 21:59 被阅读0次

引用文件时,将其相对路径配置成绝对路径,并自定义别名用来替换原文件的相对路径,容易识别,不用再考虑文件层级嵌套问题,不用再写那么长相对路径

配置前:

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 函数,使用__dirname获取当前文件所在的文件目录

function resolve (dir){
    return path.join(__dirname,dir)   //path.join(__dirname) 设置绝对路径
}

__dirname:当前配置的文件所在的绝对路径(双下划线)
dir:传入的文件夹

(3)在module.exports中设置别名

module.expots = {
    //...
    chainWebpack :(config) => {
        config.resolve.alias
            .set('@', resolve('./src'))
            .set('views',resolve('./src/view'))
            .set('assets',resolve('./src/assets'))
            //...可以继续自定义别名
             //set 第一个参数:设置的别名;第二个参数:原来默认的路径
    }
    //...
}

此时
@:表示 './src'
views: 表示 './src/view'
assets: 表示 './src/assets'
set 第一个参数:表示替换默认路径设置的别名;第二个参数:表示原来默认的路径

vue.config.js中配置的全部代码
const path = require('path')
function resolve (dir){
    return path.join(__dirname,dir)   //path.join(__dirname) 设置绝对路径 双下划线
}

module.expots = {
    //...
    chainWepack :(config) => {
        config.resolve.alias
            .set('@', resolve('./src'))
            .set('views',resolve('./src/view'))
            .set('assets',resolve('./src/assets'))
            //...可以继续自定义别名
             //set 第一个参数:设置的别名;第二个参数:原来默认的路径
    }
    //...
}

配置完成,记得重启服务生效!

相关文章

网友评论

    本文标题:Vue中引用文件配置绝对路径,不在担心文件层级关系

    本文链接:https://www.haomeiwen.com/subject/nubjdhtx.html