vue3.0全家桶+typescript项目一

浏览器

重点:**不支持IE浏览器
Firefox、Chrome 51+(没有实测,根据proxy兼容性推测出的)

安装

查看vue版本低于3.0先卸载后安装,没安装过就直接安装(node.js 8.0+)

vue -V/vue --version
npm install -g @vue/cli

(如果低于3.0要先卸载 npm uninstall vue-cli -g)

创建项目

1、命令创建
vue-cli 3.0+创建项目

vue create my-project(项目名称)

vue-cli 2.0 场景项目

vue init webpack my-project

2、ui创建

vue ui

vue3.0全家桶+typescript项目一_第1张图片

选择项目依赖

1、选择项目预设

vue my-project
Vue CLI v4.5.15
? Please pick a preset: (Use arrow keys)
> Default ([Vue 2] babel, eslint)      --vue2项目 默认预设
  Default (Vue 3) ([Vue 3] babel, eslint) --vue3项目 默认预设
  Manually select features   --手动选择

默认预设里(default):包含babel, eslint

2、设置项目所需的功能
搭建全家桶+typescript需要选择=》Manually select features

? Please pick a preset: Manually select features
? Check the features needed for your project:
 (*) Choose Vue version --选择vue版本
 (*) Babel    --设置babel代码编译(必选)
 (*) TypeScript --ts
 ( ) Progressive Web App (PWA) Support  --渐进式的web系统 浏览器app
 (*) Router   --vue路由
 (*) Vuex   --vue状态管理库
 (*) CSS Pre-processors --CSS预处理器
 (*) Linter / Formatter --代码检查
 ( ) Unit Testing --单元测试
>(*) E2E Testing --端对端测试/自动化测试

3、选择预设功能
a、vue版本
image.png
b、是否使用class组件语法,是TypeScript项目所以需要用

Use class-style component syntax

设置的vue-class-component vue-property-decorator vuex-class 解析
参考文章:

https://blog.csdn.net/weixin_44041976/article/details/107732228
https://zhuanlan.zhihu.com/p/48371638

c、使用Babel与TypeScript一起用于自动检测的填充?这里一定要选择y

Use Babel alongside TypeScript (required for modern mode, auto-detected polyfills, transpiling JSX)? Yes

d、路由history模式

? Use history mode for router? (Requires proper server setup for index fallback in production) Yes

HTML5 History 模式说明:

https://router.vuejs.org/zh/guide/essentials/history-mode.html
使用history模式刷新页面时会出现404 错误解决办法:
服务器端需要配置

vue3.0全家桶+typescript项目一_第2张图片

前端路由配置:

vue3.0全家桶+typescript项目一_第3张图片
e、选择css预处理

 Pick a CSS pre-processor (PostCSS, Autoprefixer and CSS Modules are supported by default):
> Sass/SCSS (with dart-sass) --推荐dart 安装 性能更好
  Sass/SCSS (with node-sass) --国内安装比较困难 容易保存 使用的sass版版本 对node版本也有限制
  Less
  Stylus

f、选择代码检测模式

? Pick a linter / formatter config: (Use arrow keys)
> ESLint with error prevention only 
  ESLint + Airbnb config
  ESLint + Standard config
  ESLint + Prettier
  TSLint (deprecated)
ESLint with error prevention only :只配置使用 ESLint 官网的推荐规则        
ESLint + Airbnb config:使用 ESLint 官网推荐的规则 + Airbnb 第三方的配置
ESLint + Standard config:使用 ESLint 官网推荐的规则 + Standard 第三方的配置
ESLint + Prettier:使用 ESLint 官网推荐的规则 + Prettier 第三方的配置
TSLint:TypeScript代码检查

ESLint 官网推荐的规则链接
Airbnb链接
Standard链接
Prettier链接
TSLint链接

参考以下文章(给作者点个赞):

https://blog.csdn.net/weixin_42069147/article/details/114262216
https://www.jianshu.com/p/1082eab5e593

g、选择检测时间

? Pick additional lint features: (Press  to select,  to toggle all,  to invert selection)
>(*) Lint on save --保存时检测
 ( ) Lint and fix on commit --提交时检测 git commit 检测

h、选择自动化测试

? Pick an E2E testing solution:
> Cypress (Chrome only)
  Nightwatch (WebDriver-based)
  WebdriverIO (WebDriver/DevTools based)

i、Babel,PostCSS, ESLint是否单独生成各项配置文件

? Where do you prefer placing config for Babel, ESLint, etc.?
> In dedicated config files
  In package.json

是否保存当前选择的配置项

 Save this as a preset for future projects? No

vue3.0全家桶+typescript项目一_第4张图片

项目目录

vue3.0全家桶+typescript项目一_第5张图片

运行项目:npm run serve

vue3.0全家桶+typescript项目一_第6张图片

你可能感兴趣的:(vue.js)