1. 使用 vue-cli 搭建项目
下面整个过程是基于已经安装node.js和npm的基础上,先全局化安装cnpm
npm install cnpm -g --registry=https://registry.npm.taobao.org
然后查看版本命令: cnpm --version
cnpm@7.1.0 (C:\Users\sxx\AppData\Roaming\npm\node_modules\cnpm\lib\parse_argv.js)
npm@6.14.15 (C:\Users\sxx\AppData\Roaming\npm\node_modules\cnpm\node_modules\npm\lib\npm.js)
node@14.18.1 (C:\Program Files\nodejs\node.exe)
npminstall@5.2.1 (C:\Users\sxx\AppData\Roaming\npm\node_modules\cnpm\node_modules\npminstall\lib\index.js)
prefix=C:\Users\sxx\AppData\Roaming\npm
win32 x64 10.0.19042
registry=https://registry.npmmirror.com
(1)全局安装 vue-cli ,在命令提示窗口执行:
cnpm install -g vue-cli
出现以上提示表示vue-cli正常安装成功,可以正式创建vue-cli工程项目了。
(2)安装vue-cli成功后,通过cd命令进入你想放置项目的文件夹,在命令提示窗口执行创建vue-cli工程项目的命令:
vue init webpack
确认创建项目后,后续还需输入一下项目名称、项目描述、作者、打包方式、是否使用ESLint规范代码等等,详见上图。安装顺利执行见下图:
生成如下文件目录:
3)上述文件目录结构中,已使用npm install安装了依赖。在init的选项中,若未选择npm install安装依赖,可以使用 cnpm 安装依赖:
cnpm install
(4)最后需要执行命令: npm run dev 来启动项目,启动完成后会自动弹出默认网页:
若未自动弹出默认网页,可点击链接 http://localhost.:8080 打开;或配置autoOpenBrowser: true 然后重新编译一次。
到这一步,就算成功利用vue-cli搭建一个vue项目。此处应自我激励一次!
2.目录结构及其对应作用
通过vue-cli搭建一个vue项目,会自动生成一系列文件,而这些文件具体是怎样的结构、文件对应的作用,可以看看下面的解释:
├── build/ # webpack 编译任务配置文件: 开发环境与生产环境
│ └── ...
├── config/
│ ├── index.js # 项目核心配置
│ └── ...
├ ── node_module/ #项目中安装的依赖模块
── src/
│ ├── main.js # 程序入口文件
│ ├── App.vue # 程序入口vue组件
│ ├── components/ # 组件
│ │ └── ...
│ └── assets/ # 资源文件夹,一般放一些静态资源文件
│ └── ...
├── static/ # 纯静态资源 (直接拷贝到dist/static/里面)
├── test/
│ └── unit/ # 单元测试
│ │ ├── specs/ # 测试规范
│ │ ├── index.js # 测试入口文件
│ │ └── karma.conf.js # 测试运行配置文件
│ └── e2e/ # 端到端测试
│ │ ├── specs/ # 测试规范
│ │ ├── custom-assertions/ # 端到端测试自定义断言
│ │ ├── runner.js # 运行测试的脚本
│ │ └── nightwatch.conf.js # 运行测试的配置文件
├── .babelrc # babel 配置文件
├── .editorconfig # 编辑配置文件
├── .gitignore # 用来过滤一些版本控制的文件,比如node_modules文件夹
├── index.html # index.html 入口模板文件
└── package.json # 项目文件,记载着一些命令和依赖还有简要的项目描述信息
└── README.md #介绍自己这个项目的,可参照github上star多的项目。
build/
组件的命名:
遵循 W3C 规范中的自定义组件名 (字母全小写且必须包含一个连字符),为了避免和当前以及未来的 HTML 元素相冲突。
演示流程依赖的版本:
node v14.18.1
npm v6.14.15
vue v2.9.6