Vue-cli 3 / Vue-cli 4
目录结构
├── README.md # 说明
|-- dist # 打包后文件夹
├── babel.config.js # babel语法编译
├── package-lock.json
├── public # 静态文件夹,这类资源将会直接被拷贝,而不会经过 webpack 的处理。
│ ├── favicon.ico
│ └── index.html #入口页面
└── src # 源码目录├── App.vue - 页面├── assets - 静态目录,这类引用会被 webpack 处理。│ └── logo.png├── components 组件│ └── HelloWorld.vue└── main.js # 入口文件,加载公共组件
│—— vue.config.js # 配置文件,需自行配置
│—— .gitignore # git忽略上传的文件格式
│—— babel.config.js # babel语法编译
│—— package.json # 项目基本信息
│—— .env # 环境变量和模式,需自行配置
│—— .eslintrc.js # ES-lint校验
vue.config.js 配置
module.exports = {publicPath: './', // 基本路径outputDir: 'dist', // 构建时的输出目录assetsDir: 'static', // 放置静态资源的目录indexPath: 'index.html', // html 的输出路径filenameHashing: true, // 文件名哈希值lintOnSave: false, // 是否在保存的时候使用 `eslint-loader` 进行检查。// 组件是如何被渲染到页面中的? (ast:抽象语法树;vDom:虚拟DOM)// template ---> ast ---> render ---> vDom ---> 真实的Dom ---> 页面// runtime-only:将template在打包的时候,就已经编译为render函数// runtime-compiler:在运行的时候才去编译templateruntimeCompiler: false,transpileDependencies: [], // babel-loader 默认会跳过 node_modules 依赖。productionSourceMap: false, // 是否为生产环境构建生成 source map//调整内部的 webpack 配置configureWebpack: () => { },chainWebpack: () => { },// 配置 webpack-dev-server 行为。devServer: {open: true, // 编译后默认打开浏览器host: '0.0.0.0', // 域名port: 8080, // 端口https: false, // 是否https// 显示警告和错误overlay: {warnings: false,errors: true},proxy: {'/api': {target: 'http://127.0.0.1:10001',changeOrigin: true, // 是否跨域ws: false, // 是否支持 websocketsecure: false, // 如果是 https 接口,需要配置这个参数pathRewrite: { // 可以理解为一个重定向或者重新赋值的功能'^/api': '' // '^/api': '/' 这种接口配置出来 http://127.0.0.1:10001/login} // '^/api': '/api' 这种接口配置出来 http://127.0.0.1:10001/api/login}}}
}