vue-cli 3.0安装和使用
零. 前言
公司最近开发项目使用的是vue-cli 3.0版本开发,但是对于vue-cli 3.0版本一直没有研究过如何使用,公司使用配置:pug + ts + stylus + eslint;编辑器使用:vscode,使用起来简直不要太爽。
默认你已经安装了nodejs
一.安装vue-cli 3.0
1.安装:
npm install -g @vue/cli
-g: 全局安装vue-cli
二.创建项目
1.创建vue-app项目:
vue create vue-app
2.项目配置:
- 默认配置
- 手动配置:babel ts 预编译 等等… 【选择这个】
以下是我选择的配置(可以直接按数字键1,2,3,4进行选择)
Babel:将ES6编译成ES5TypeScript:JS超集,主要是类型检查Router和Vuex,路由和状态管理Linter/Formatter:代码检查工具CSS Pre-processors:css预编译 (稍后会对这里进行配置)Unit Testing:单元测试,开发过程中前端对代码进行自运行测试
Use class-style component syntax? (Y/n) y
是否使用Class风格装饰器?
即原本是:home = new Vue()创建vue实例
使用装饰器后:class home extends Vue{}
Use Babel alongside TypeScript for auto-detected polyfills? (Y/n) y
使用Babel与TypeScript一起用于自动检测的填充? yes
Use history mode for router? (Requires proper server setup for index fallback in production) (Y/n) y
路由使用历史模式? 这种模式充分利用 history.pushState API 来完成 URL 跳转而无须重新加载页面
使用什么css预编译器? 我选择的 stylus
tslint: typescript格式验证工具eslint w...: 只进行报错提醒; 【选这个】eslint + A...: 不严谨模式;eslint + S...: 正常模式;eslint + P...: 严格模式;
代码检查方式:我选择保存时检查

单元测试工具,这里附上vue单元测试的链接,想了解的小伙伴戳这里 https://vue-test-utils.vuejs.org/zh/
vue-cli 一般来讲是将所有的依赖目录放在package.json文件里
Save this as a preset for future projects? (y/N) n
是否在以后的项目中使用以上配置?不
下载依赖的工具:使用 yarn,速度快。
到此为止,安装就完成了,可以等待安装成功。
三.使用
1.vscode的eslint配置,使代码能够在ctrl+s的时候自动格式化:
在vue-app目录县新建文件夹.vscode文件,再在.vscode目录下新建settings.json,文件内容如下:
tips:此配置包含了.vue文件.styl文件typescript的代码缩进
{
"prettier.printWidth": 160,
"prettier.tabWidth": 2,
"prettier.semi": false,
"prettier.singleQuote": true,
"prettier.disableLanguages": [],
"editor.tabSize": 2,
"[vue]": {
"editor.formatOnSave": true
},
"[typescript]": {
"editor.formatOnSave": true,
},
"[stylus]": {
"editor.formatOnSave": true,
},
"stylusSupremacy.insertColons": false,
"stylusSupremacy.insertSemicolons": false,
"stylusSupremacy.insertBraces": false,
"languageStylus.useSeparator": false,
}
- 这样做:
表示vscode在读取到vue-app项目是,回去查找.vscode下的settings.json配置并应用。必须禁用插件:eslint
2.使用pug
yarn add pug pug-plain-loader --dev
- 使用
yarn安装pug和pug-plain-loader;(没有yarn的自行百度安装 --dev:安装到开发环境- 使用:打开
App.vue文件,将文件修改为下面这样既可。
<template lang="pug">
#app
#nav
router-link(to="/") Home
router-link(to="/about") About
router-view
</div>
</template>
四、常见的一些问题
0.其他一些eslint配置都可以在packge.json文件中的eslintConfig下的rules下配置
1.console.log(1)报错:
找到packge.json文件中的eslintConfig下的rules:
"no-console": "off"
参考文献:
vue-cli 3.0安装和使用的更多相关文章
- VUE CLI 3.0 安装及创建项目
一.安装 VUE CLI 3.0 官网: https://cli.vuejs.org/ 详细资料可以自己先把官网过一遍. 1. 安装(默认你的电脑上已安装node及npm) npm install ...
- 如何使用@vue/cli 3.0在npm上创建,发布和使用你自己的Vue.js组件库
译者按: 你可能npm人家的包过成千上万次,但你是否有创建,发布和使用过自己的npm包? 原文: How to create, publish and use your own VueJS Compo ...
- vue/cli 3.0脚手架搭建
在vue 2.9.6中,搭建vue-cli脚手架的流程是这样的: 首先 全局安装vue-cli,在cmd中输入命令: npm install --global vue-cli 安装成功: 安装完成 ...
- @vue/cli 4.0+express 前后端分离实践
之前总结过一篇vue-cli 2.x+express+json-server实现前后端分离的帖子,@vue/cli3.0及4.0搭建的项目与vue-cli2.x的项目结构有很大的不同.这里对@vue/ ...
- @vue/cli 3.0 使用 svg-sprite-loader 加载本地 SVG 文件
目录 @vue/cli 3.0 使用 svg-sprite-loader 加载本地 SVG 文件 运行 使用 配置 svg-sprite-loader 调用当前环境下的颜色 props @vue/cl ...
- Vue CLI 3.0脚手架如何在本地配置mock数据
前后端分离的开发模式已经是目前前端的主流模式,至于为什么会前后端分离的开发我们就不做过多的阐述,既然是前后端分离的模式开发肯定是离不开前端的数据模拟阶段. 我们在开发的过程中,由于后台接口的没有完成或 ...
- Django + Vue cli 3.0 访问静态资源问题
[问题背景] 用Vue clie 3.0的搭建得框架把我坑死了,在打包后,调用不到静态资源js,css,mp3等 [问题原因] vue cli 3.0打包后,dist目录下没有static目录,而Dj ...
- 专访Vue作者尤雨溪:Vue CLI 3.0重构的原因
1.为什么要对 Vue CLI 进行大规模修改? 尤雨溪认为旧版本的 Vue CLI 本质上只是从 GitHub 拉取模版,这种拉模版的方式有几个问题: (1) 在单个模版里面同时支持太多选项会导致模 ...
- vue cli 4.0.5 的使用
vue cli 4.0.5 的使用 现在的 vue 脚手架已经升级到4.0的版本了,前两日vue 刚发布了3.0版本,我看了一下cli 4 和cli 3 没什么区别,既然这样,就只总结一下vue cl ...
- 【Vue CLI】从安装到构建项目再到目录结构的说明
目录 1. 构建我们的项目 2. 目录结构说明 2.1 build目录 2.2 config目录 2.3 src目录 2.4 static目录 "Vue CLI是一个基于Vue.js进行快速 ...
随机推荐
- python网络爬虫之如何识别验证码
有些网站的登录方式是验证码登录的方式,比如今天我们要测试的网站专利检索及分析. http://www.pss-system.gov.cn/sipopublicsearch/portal/uilogin ...
- Java for LeetCode 104 Maximum Depth of Binary Tree
Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the long ...
- cygwin添加到有右键菜单
cygwin添加到有右键菜单 前提 为了在windows中使用cygwin编译指定文件代码更为方便,所以动心思琢磨把cygwin添加到右键菜单,百度了一下,发现很多这样的教程,但是有问题,比如添加了但 ...
- js修改div标签中的内容
<div id='divId'>初始文字</div> <script> $(document).ready(function(e){ $('#divId').htm ...
- 加州小学grade1,学习计划
Visual vocabulary Grammar Spelling Maths Chapter 1 Patterns and Number SenseChapter 2Understanding A ...
- BZOJ 1724 [Usaco2006 Nov]Fence Repair 切割木板:贪心 优先队列【合并果子】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1724 题意: 你要将一块长木板切成n段,长度分别为a[i](长木板的长度 = ∑ a[i] ...
- 使用OGNL表达式
OGNL表达式(#号的用法) 用法1:访问OGNL上下文和Action上下文,#相当于ActionContext.getContext() 1.如果访问其他Context中的对象,由于他们不是根对象, ...
- listen 69
Today Is Unlucky for People Who Have Bad Luck Today If you have Paraskevidekatriaphobia, today is no ...
- codeforces 659G G. Fence Divercity(dp)
题目链接: G. Fence Divercity time limit per test 2 seconds memory limit per test 256 megabytes input sta ...
- linux命令学习:echo详解,格式化输出,不换行输出
shell脚本不换行刷新数据 #!/bin/bash ] do a=$(ifconfig eth0 | grep 'RX pac' | awk '{print $2}' | awk -F: '{pri ...