1. Vue CLI 客户端
三大组件
1、Vue @vue/cli
2、Vue @vue/cil-service
3、Vue @vue/cli-plugin
vue create
注意点:vue 项目名称不能包含大写字母。
预设 preset:
① TypeScrip 和 JavaScript(类比java平台:Java 和 kotlin)
② PWA:Progressive Web APP 渐进式WEB应用程序
③ CSS Pre-processors:Less、Sass
④ Unit Testing:单元测试
⑤ Babel:做浏览器脚本语言(Browser)兼容性辅助,将高级的JS代码编译成低级的JS代码。
⑥ Vuex:vue项目管理(Plugin)
⑦ ESlint:ECMA Script Lint 代码规范,格式校验。
Where do you perfer placing config for Babel,ESlint,etc. ?
in dedicated file. 在独立的文件中
vue create help 查看vue选项指令
vue ui 开启图形化界面
项目结构
main.js # 程序入口(webpack打包入口),引入各种的公共组件或者所需要使用的Plugin
(例如:vuex,vue-router,electron-builder)
App.vue # 根组件(唯一性)在main.js中被vm实例中的render函数所渲染
(render:粉刷 造成 翻译 致使 给予 表达)
package.json # npm 的配置文件,里面设置脚本和项目依赖的库
package-lock.json # 版本锁,控制项目依赖的版本和仓库来源
.gitignore # 配置在git提交项目代码的时需要忽略的文件或者文件夹
babel.config.js # Babel 配置文件
package.json
{
"name": "kingcard", ## 项目名称
"version": "0.1.0", ## 项目版本
"private": true, ## 是否是私有项目
"scripts": { ## 项目在生命周期中各个环节需要执行的脚本(简化)
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint",
"electron:build": "vue-cli-service electron:build",
"electron:serve": "vue-cli-service electron:serve",
"postinstall": "electron-builder install-app-deps",
"postuninstall": "electron-builder install-app-deps"
},
"main": "background.js",
"dependencies": { ## 配置项目的模块包的依赖
"axios": "^0.22.0",
"core-js": "^3.6.5",
"electron": "^15.2.0",
"jsonp": "^0.2.1",
"less": "^4.1.2",
"vue": "^2.6.14",
"yarn": "^1.22.17"
},
"devDependencies": { ## 配置项目的模块包的依赖(开发环境,不发布到生成环境production)
"@vue/cli-plugin-babel": "~4.5.0",
"@vue/cli-plugin-eslint": "~4.5.0",
"@vue/cli-service": "~4.5.0",
"babel-eslint": "^10.1.0",
"electron": "^13.0.0",
"electron-devtools-installer": "^3.1.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^6.2.2",
"less-loader": "^7.3.0",
"vue-cli-plugin-electron-builder": "~2.1.1",
"vue-template-compiler": "^2.6.11"
},
"eslintConfig": { ## 语法规范,格式校验的配置
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "babel-eslint"
},
"rules": {
"vue/no-unused-components": "off"
}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead"
]
}
在发布代码的时候,我们不会node_module也发布,会根据package.json文件执行终端npm install
来下载我们需要的模块包。