vue-cli 3.0的调整

作者: 虚蕪面孔 | 来源:发表于2018-07-11 14:04 被阅读58次

安装命令调整

//原先
npm install -g vue-cli
vue init <template-name> <project-name>
//改为
npm install -g @vue/cli
# or
yarn global add @vue/cli

vue create my-project

项目初始化的不同

通过上下键进行移动空格键进行选中,选中完成后点击回车进行项目生成


image.png image.png

项目结构变化

选择default初始化,可以看到项目结构为:

│  package-lock.json
│  package.json
├─public
│      favicon.ico
│      index.html
└─src
    │  App.vue
    │  main.js
    ├─assets
    │      logo.png
    └─components
            HelloWorld.vue

选择TS初始化,可以看到项目结构为:详细内容就一一呈现了

│  package-lock.json
│  package.json
├─public
│      favicon.ico
│      index.html
└─src
    │  App.vue
    │  main.ts
    │ router.ts
    │  store.ts
    │ registerServiceWorker.ts
    ├─assets
    │      logo.png
    └─components
            HelloWorld.vue

webpack的配置文件没有了

你会发现以前项目中的build跟conf文件夹没了,这也就代表你不能随意的更改他的打包文件了
vue-cli3.0默认项目目录与2.0的相比,更精简:
1.移除的配置文件根目录下的,buildconfig等目录,
2.移除了static文件夹,新增了public文件夹,并且index.html移动到public中。
3.在src文件夹中新增了views文件夹,用于分类 试图组件 和 公共组件 。
4.大部分配置 都集成到 vue.config.js这里,在项目根目录下

vue.config.js在哪里呢?

这是自己手动建立的文件存放在项目的根目录下基本语法如下:

module.exports = {
 // 基本路径
 baseUrl: '/',
 // 输出文件目录
 outputDir: 'dist',
 // eslint-loader 是否在保存的时候检查
 lintOnSave: true,
 // use the full build with in-browser compiler?
 // https://vuejs.org/v2/guide/installation.html#Runtime-Compiler-vs-Runtime-only
 compiler: false,
 // webpack配置
 // see https://github.com/vuejs/vue-cli/blob/dev/docs/webpack.md
 chainWebpack: () => {},
 configureWebpack: () => {},
 // vue-loader 配置项
 // https://vue-loader.vuejs.org/en/options.html
 vueLoader: {},
 // 生产环境是否生成 sourceMap 文件
 productionSourceMap: true,
 // css相关配置
 css: {
  // 是否使用css分离插件 ExtractTextPlugin
  extract: true,
  // 开启 CSS source maps?
  sourceMap: false,
  // css预设器配置项
  loaderOptions: {},
  // 启用 CSS modules for all css / pre-processor files.
  modules: false
 },
 // use thread-loader for babel & TS in production build
 // enabled by default if the machine has more than 1 cores
 parallel: require('os').cpus().length > 1,
 // 是否启用dll
 // See https://github.com/vuejs/vue-cli/blob/dev/docs/cli-service.md#dll-mode
 dll: false,
 // PWA 插件相关配置
 // see https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-pwa
 pwa: {},
 // webpack-dev-server 相关配置
 devServer: {
  open: process.platform === 'darwin',
  host: '0.0.0.0',
  port: 8080,
  https: false,
  hotOnly: false,
  proxy: null, // 设置代理
  before: app => {}
 },
 // 第三方插件配置
 pluginOptions: {
  // ...
 }
}

尤大佬是这样说的

1.vue-cli@3.0修改的方向是逐步成为“config/script in a package”的模型
2.为避免使用户预先做一些不可逆的设置,
-我们将逐步一出browserify支持,webpack讲只基于一个template
-在预设时就可以配置常见的(pwa/ts/ssr)设置
3.除了封装包,提供通过vue.config.js配置的可能
-为高级功能 如 env variables, css extraction API proxying提供了一个集中的入口
-如本地预设一样,提供了底层的webpack设置支持,可能是webpackchain

运行编译的命令改了

以前是:

   "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
    "start": "npm run dev",
    "build": "node build/build.js"

现在却是:

   "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"

总结:这次更新变化还是挺大的,将一些文件省略掉了,整体项目结构也更加清晰明了,值得大家去了解一波

相关文章

网友评论

    本文标题:vue-cli 3.0的调整

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