vue cli3创建的项目目录解析

vue cli3 与 vue cli2 的区别

vue-cli 3 与 2 版本有很大区别

  • vue-cli 3 是基于 webpack 4 打造,vue-cli 2 还是 webapck 3
  • vue-cli 3 的设计原则是“0配置”,移除的配置文件根目录下的,build和config等目录
  • vue-cli 3 提供了 vue ui 命令,提供了可视化配置,更加人性化
  • 移除了static文件夹,新增了public文件夹,并且index.html移动到public中

vue cli3 的简单安装(图示)

在这里插入图片描述

vue cli3目录结构详解

在这里插入图片描述

node_modules

node_modules文件夹是安装node后用来存放用包管理工具下载安装的包的文件夹

public

public文件夹是用于存放项目使用到的一些静态资源(图片)等,在最后webpack打包时会直接放入dist文件夹内,和 vue-cli2 的static文件夹一样。

src

src文件夹是程序的源代码文件夹

assets

assets一般用于放置src里的组件所使用的静态资源(在webpack打包时会被当成一个模块打包到js文件夹里。

components

components文件夹一般放置非路由组件(全局组件)

router

router文件夹是存放路由配置文件

stor

store文件夹是存放vuex相关文件

App.vue

App.vue是项目中唯一的根组件

main.js

main.js是入口文件,也是整个程序当中最先执行的文件

.browserslisrc

.browserslisrc文件是配置浏览器相关的东西、

1% 浏览器市场份额
last 2 versions 最后2个版本
not ie <= 8 不支持IE8及以下的浏览器

.gitignore

.gitignore文件是git版本管制忽略的配置

babel.config.js

babel.config.js是babel的配置文件
用于转化一些东西,比如把ES6相关语法转化为ES5,兼容性更好

package.json

package.json是应用包配置文件,记录着项目名称、项目依赖、项目运行等信息

package-lock.json

package-lock.json是包版本控制文件,记录真实安装的包版本

README.md

README.md文件是应用描述文件

配置隐藏

原本的webpack.config.js值vue cli3是隐藏起来的,具体目录在
node_nodules/@vue/cli-serve/webpack.config.js

vue.config.js

vue.config.js 是一个可选的配置文件(我们需要自己创建),如果项目的 (和 package.json 同级的) 根目录中存在这个文件,那么它会被 @vue/cli-service 自动加载。

vue.config.js基础配置代码

module.exports = {
    publicPath: "./", // 公共路径 默认为"/",建议使用"./"相对路径
    devServer: {   // 本地服务器配置(npm run serve)
      port: 8080, // 端口
      host: "localhost", // 域名
      https: false, // 是否开启https
      open: true	// 是否在开启服务器后自动打开浏览器访问该服务器
    },
    lintOnSave: false,  // 取消lint语法检测,此处可不配置
    outputDir:"dist", // build打包输出目录
    assetsDir:"assets", // 静态文件输出目录,基于dist
    indexPath: "index.html",  // 输出html文件名
    productionSourceMap: false, // 取消.map文件的打包,加快打包速度
    configureWebpack: (config) => {
      // process.env为环境变量,分别对应.env.development文件和.env.production文件 此处表示加快开发环境打包速度
      if (process.env.NODE_ENV !== 'production') return;
      config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true;	//生产环境去掉console.log
      return {  // 此处配置webpack.config.js的相关配置
        plugins: [],
        performance: {}
      };
    }
};

补充说明:

  • devServer: 所有 webpack-dev-server 的选项都支持。注意: 有些值像 host、port 和 https
    可能会被命令行参数覆写。 有些值像 publicPath 和 historyApiFallback
    不应该被修改,因为它们需要和开发服务器的 publicPath 同步以保障正常的工作。
  • devServer.proxy: 如果你的前端应用和后端 API 服务器没有运行在同一个主机上,你需要在开发环境下将 API 请求代理到
    API 服务器。这个问题可以通过 vue.config.js 中的 devServer.proxy
    选项来配置。devServer.proxy 可以是一个指向开发环境 API 服务器的字符串
  • pluginOptions: 这是一个不进行任何 schema 验证的对象,因此它可以用来传递任何第三方插件选项。
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值