kechenhh's blog kechenhh's blog
首页
  • 前端文章

    • JavaScript
    • Vue
  • Node.js
  • SQL
  • python
  • HTML
  • CSS
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 友情链接
关于
  • 网站
  • 资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

kechenhh

前端CV工程师
首页
  • 前端文章

    • JavaScript
    • Vue
  • Node.js
  • SQL
  • python
  • HTML
  • CSS
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 友情链接
关于
  • 网站
  • 资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • JavaScript文章

  • Vue文章

    • vueAPI
    • vue-cli(脚手架)创建Vue项目
      • 官方文档
      • 参考
      • 前提条件
        • 安装node.js
        • 安装cnpm(淘宝镜像)
        • 安装webpack
        • 安装vue-cli
      • vue-cli2搭建项目
        • 项目安装
        • 项目运行
        • 项目结构
      • vue-cli3.0/4.0搭建项目
        • 项目安装
        • 项目运行
    • Vuex学习
    • vue路由
    • vue的插槽
    • Vue CLi3 修改webpack配置
    • Vue中的scoped和scoped穿透
    • Vue项目使用mock数据的几种方式
  • 前端
  • Vue文章
kechenhh
2021-07-14
目录

vue-cli(脚手架)创建Vue项目

# 官方文档

https://cli.vuejs.org/zh/

# 参考

https://www.jianshu.com/p/fc94ad12cb9a

https://www.chensheng.group/2019/12/18/113-vue-cli4.0%E5%AD%A6%E4%B9%A0/

# 前提条件

# 安装node.js

下载地址:https://nodejs.org/en/download/

(npm会在安装node.js时默认安装好)

查看node.js版本

node -v
1

查看npm版本

npm -v
1

# 安装cnpm(淘宝镜像)

npm install -g cnpm --registry=https://registry.npm.taobao.org
1

( npm install 可简写为 npm i )

将npm改成使用cnpm安装模块

# 安装webpack

安装方法:打开命令行工具,输入命令行:

npm install webpack -g
1
npm install  webpack-cli -g
1

安装成功后输入webpack -v,如果出现相应的版本号,则说明安装成功。

# 安装vue-cli

全局安装

npm install -g @vue/cli
1

关于旧版本

Vue CLI 的包名称由 vue-cli 改成了 @vue/cli。 如果你已经全局安装了旧版本的 vue-cli (1.x 或 2.x),你需要先通过 npm uninstall vue-cli -g 或 yarn global remove vue-cli 卸载它。

拉取旧版本

Vue CLI >= 3 和旧版使用了相同的 vue 命令,所以 Vue CLI 2 (vue-cli) 被覆盖了。如果你仍然需要使用旧版本的 vue init 功能,你可以全局安装一个桥接工具:

npm install -g @vue/cli-init
# `vue init` 的运行效果将会跟 `vue-cli@2.x` 相同
vue init webpack my-project
1
2
3

查看vue-cli版本

vue -V
@vue/cli 4.0.5
1
2

# vue-cli2搭建项目

# 项目安装

vue init webpack my-project(my-project为项目名,不支持大写字母)
1

Project name 项目名

Vue build 选择第一个(运行加编译)

vue-router 选择 n (vue的路由)

ESLint 选择 n (代码检测工具,新手建议关闭)

unit tests 选择 n (单元测试工具)

e2e tests 选择n (端到端测试)

模块安装工具 选择npm

可能的报错

Sorry, name can no longer contain capital letters
1

原因:项目名不支持大写

# 项目运行

进入项目 根目录下,再运行

cd my-project
npm run dev
1
2

运行其他人的项目

#安装依赖
npm install
#运行
npm run dev
1
2
3
4

# 项目结构

结构详解

https://my.oschina.net/liuyuantao/blog/883251

.
|-- build                            // 项目构建(webpack)相关代码
|   |-- build.js                     // 生产环境构建代码
|   |-- check-version.js             // 检查node、npm等版本
|   |-- dev-client.js                // 热重载相关
|   |-- dev-server.js                // 构建本地服务器
|   |-- utils.js                     // 构建工具相关
|   |-- webpack.base.conf.js         // webpack基础配置
|   |-- webpack.dev.conf.js          // webpack开发环境配置
|   |-- webpack.prod.conf.js         // webpack生产环境配置
|-- config                           // 项目开发环境配置
|   |-- dev.env.js                   // 开发环境变量
|   |-- index.js                     // 项目一些配置变量
|   |-- prod.env.js                  // 生产环境变量
|   |-- test.env.js                  // 测试环境变量
|-- src                              // 源码目录
|   |-- components                     // vue公共组件
|   |-- store                          // vuex的状态管理
|   |-- App.vue                        // 页面入口文件
|   |-- main.js                        // 程序入口文件,加载各种公共组件
|-- static                           // 静态文件,比如一些图片,json数据等
|   |-- data                           // 群聊分析得到的数据用于数据可视化
|-- .babelrc                         // ES6语法编译配置
|-- .editorconfig                    // 定义代码格式
|-- .gitignore                       // git上传需要忽略的文件格式
|-- README.md                        // 项目说明
|-- favicon.ico 
|-- index.html                       // 入口页面
|-- package.json                     // 项目基本信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

# vue-cli3.0/4.0搭建项目

3.0/4.0 的安装过程相同,只是目录结构有变化

# 项目安装

# 1.命令行安装

安装命令

vue create my-project
1

选择配置 默认(default)或者自定义(Manually select features)。

选择自定义配置

选择功能

按空格键选择你需要的功能,选完后按回车

babel:javascript转译器,将最新版的js语法(es6、es7)转换为现阶段浏览器可以兼容的js代码
typescript:使用 TypeScript 书写源码
PWA:渐进式WEB应用
Router:使用vue-router
Vuex:使用vuex
CSS Pre-processors:css预处理器
Linter / Formatter:代码规范标准
Unit Testing:单元测试
E2E Testing:e2e测试
1
2
3
4
5
6
7
8
9
10
11

Use history mode for router? ---router是否使用history模式

history需要服务器支持 详情看这儿https://router.vuejs.org/zh/guide/essentials/history-mode.html (opens new window) 这里我就选no

Pick a CSS pre-processor ---css预处理器的选择

Pick a linter / formatter config ---代码格式化检测选择(这里选择 ESLint + Prettier)

Pick additional lint features ---是否保存配置

Where do you prefer placing config for Babel, PostCSS, ESLint, etc.?

----关于Babel, PostCSS, ESLint, etc.这些配置文件你是想放在package.json里面还是单独放在外面

(编辑器一般默认会在项目根目录下寻找配置文件,这里我就直接回车选择In dedicated config files)

Save this as a preset for future projects?

--- 是否保存为未来项目的预配置吗?

# 2.图形化安装

执行npm命令
vue ui
访问 http://localhost:8000 你就可以创建,管理,导入项目
1
2
3

# 项目运行

npm run serve
1

由于vue3.0取消了以前的那些配置文件,所以我们需要在根目录自己创建一个vue.config.js

const path = require('path');

module.exports = {
  publicPath: './',
  // 输出文件目录,默认就是dist
  outputDir: process.env.NODE_ENV === "test" ? 'distTest' : 'distPro',
  // 放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录。
  assetsDir: 'static',
  // 生产环境是否生成 sourceMap 文件
  productionSourceMap: false,
  // 配置es-link true,'error'
  lintOnSave: true,
  css: {  // 一次配置,全局使用,这个scss 因为每个文件都要引入
    loaderOptions: {
      sass: {
        prependData: `@import "./src/assets/css/index.scss";`
      }
    }
  },
  // webpack-dev-server 相关配置
  devServer: {
    // 可以通过设置让浏览器 overlay 同时显示警告和错误:
    overlay: {
      warnings: false,
      errors: false
    },
    open: false,
    host: 'localhost',
    port: 8080,
    https: false,
    proxy: {
      '/mgr': {
        target: 'https://api.douban.com',
        ws: true,
        changeOrigin: true,
        pathRewrite:{
          '^/mgr': ''
        }
      }
    }
  },
  configureWebpack:{  // 覆盖webpack默认配置的都在这里
    resolve:{   // 配置解析别名
      alias:{
        '@': path.resolve(__dirname, './src')
      } 
    }
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
去GitHub编辑 (opens new window)
上次更新: 2021/07/15, 14:11:45
vueAPI
Vuex学习

← vueAPI Vuex学习→

最近更新
01
sql语句基础
10-21
02
express基础
10-21
03
转换文件
08-27
更多文章>
Theme by Vdoing | Copyright © 2021-2023 kechenhh | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×