使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题


Posted in Javascript onMay 14, 2019

在终端中运行以下命令:

vue create xxx   // xxx为项目名称,例如 vue-project

然后,系统会提示我们选择默认预设或手动选择功能。使用向下箭头键,我们手动选择功能,然后按Enter键。

使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题

然后,我们将看到一系列功能选项。使用向下箭头键,我们将向下移动并使用空格键选择需要的功能,然后按回车键。

使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题

Linter / Formatter 就是代码风格。 我们将使用 ESLint + Prettier

使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题

我们将在保存时添加Lint的附加功能。

使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题

我们将选择单独的配置文件。

使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题

我们可以选择是否将这些所有的设置保存起来,下次生成项目时,直接使用。这里不需要,就选择 N

使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题

如果你想储存下来,这是设置会储存在 .vuerc 用户主目录中指定的 JSON 文件中。

这里我们选择 npm 作为包管理器。

项目创建完成后, cd 进入项目根目录, 例如: cd vue-project 然后,在根目录运行命令: npm run serve 启动项目,然后浏览器打开: localhost:8080 就能看到初始项目了。

安装 Vetur

此时,我们用 VS Code 打开项目, .vue 的文件是灰色的,这是因为 VS Code 没有 .vue 文件的语法高亮。

使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题

所以就需要安装 Vetur 这个插件帮助我们。打开左侧的插件市场。

使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题

然后搜索“Vetur”,在搜索结果中选择它,然后单击“install/安装”。然后单击“ Reload/重新加载”。

此时,我们的 .vue 文件就有语法高亮了。

另外, Vetur 有一些代码片段,我们在.vue文件中键入单词“scaffold”并按Enter键,这将使用单个文件.vue组件的骨架或脚手架自动填充该文件。

使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题 

安装ESLint 和 Prettier

在扩展存储中,我们将搜索ESLint,然后继续安装它。Prettier也是一样的步骤。安装完毕,我们会重新加载VS Code。

配置ESLint

在我们项目根目录的.eslintrc.js文件中,添加: 'plugin:prettier/recommended' ,这将在ESLint中启用Prettier支持。

module.exports = {
   root: true,
   env: {
    node: true
   },
   'extends': [
    'plugin:vue/essential',
    'plugin:prettier/recommended', // we added this line
    '@vue/prettier'
   ],
   rules: {
    'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off'
   },
   parserOptions: {
    parser: 'babel-eslint'
   }
  }

配置 Prettier

我们还可以创建一个Prettier配置文件,根据我们的个人风格或团队的偏好添加一些特殊设置。

同样在项目根目录创建 .prettierrc.js

module.exports = {
  singleQuote: true,
  semi: false
}

这两项设置是将双引号转换为单引号,并且结尾不使用分号。

用户设置

为了进一步的优化VS Code的开发体验,我们将用户设置添加一些配置。 首选项 >>> 设置 >>> 用户设置 ,进入 settings.json 文件中。

首先关闭Vetur的linting功能,添加:

"vetur.validation.template": false

现在我们想告诉ESLint我们希望它验证哪些语言(vue,html和javascript)并设置autoFix为true每个语言:

"eslint.validate": [
  {
    "language": "vue",
    "autoFix": true
  },
  {
    "language": "html",
    "autoFix": true
  },
  {
    "language": "javascript",
    "autoFix": true
  }
],

然后,设置 ESLint autoFixOnSave。

"eslint.autoFixOnSave": true,

并设置我们的编辑器本身formatOnSave。

"editor.formatOnSave": true,

至此,我们设置就基本完成了,当我们保存文件的时候,就可以自动格式化代码了。

总结

以上所述是小编给大家介绍的使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时会及时回复大家的!

Javascript 相关文章推荐
JavaScript 替换Html标签实现代码
Oct 14 Javascript
cloudgamer出品ImageZoom 图片放大效果
Apr 01 Javascript
JQuery在页面中添加和除移DOM示例代码
Jun 24 Javascript
JavaScript设计模式之单例模式实例
Sep 24 Javascript
AngularJS国际化详解及示例代码
Aug 18 Javascript
javascript 注释代码的几种方法总结
Jan 04 Javascript
js基于myFocus实现轮播图效果
Feb 14 Javascript
vue如何引用其他组件(css和js)
Apr 13 Javascript
微信小程序 获取session_key和openid的实例
Aug 17 Javascript
Vue使用高德地图搭建实时公交应用功能(地图 + 附近站点+线路详情 + 输入提示+换乘详情)
May 16 Javascript
详解Vue取消eslint语法限制
Aug 04 Javascript
uniapp 微信小程序 自定义tabBar 导航
Apr 22 Javascript
JavaScript实现多张图片放大镜效果示例【不限定图片尺寸,rem单位】
May 14 #Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
May 14 #Javascript
fastadmin中调用js的方法
May 14 #Javascript
vue+elementUI实现表单和图片上传及验证功能示例
May 14 #Javascript
微信小程序自定义可滑动顶部TabBar选项卡实现页面切换功能示例
May 14 #Javascript
微信小程序开发实现的选项卡(窗口顶部/底部TabBar)页面切换功能图文详解
May 14 #Javascript
详解jenkins自动化部署vue
May 14 #Javascript
You might like
php 指定范围内多个随机数代码实例
2016/07/18 PHP
Javascript写了一个清除“logo1_.exe”的杀毒工具(可扫描目录)
2007/02/09 Javascript
jquery提示 "object expected"的解决方法
2009/12/13 Javascript
工作需要写的一个js拖拽组件
2011/07/28 Javascript
js select option对象小结
2013/12/20 Javascript
jQuery中选择器小问题(新人难免遇到)
2014/03/31 Javascript
js库Modernizr的介绍和使用
2015/05/07 Javascript
《JavaScript函数式编程》读后感
2015/08/07 Javascript
jquery判断对象是否为空并遍历对象的简单实例
2016/07/26 Javascript
JS与jQuery实现隔行变色的方法
2016/09/09 Javascript
Bootstrap导航简单实现代码
2017/03/06 Javascript
Node.js中的http请求客户端示例(request client)
2017/05/04 Javascript
浅谈angular2 组件的生命周期钩子
2017/08/12 Javascript
js中let和var定义变量的区别
2018/02/08 Javascript
浅析node.js的模块加载机制
2018/05/25 Javascript
用vue快速开发app的脚手架工具
2018/06/11 Javascript
JavaScript设计模式之模板方法模式原理与用法示例
2018/08/07 Javascript
微信小程序实现下拉菜单切换效果
2020/03/30 Javascript
[05:34]2014DOTA2国际邀请赛中国区预选赛精彩TOPPLAY第二弹
2014/06/25 DOTA
[05:06]2017亚洲邀请赛DAC回顾片
2017/04/19 DOTA
Python的消息队列包SnakeMQ使用初探
2016/06/29 Python
详解Python在七牛云平台的应用(一)
2017/12/05 Python
python多行字符串拼接使用小括号的方法
2020/03/19 Python
详解Python 定时框架 Apscheduler原理及安装过程
2019/06/14 Python
pytorch 实现将自己的图片数据处理成可以训练的图片类型
2020/01/08 Python
PyCharm汉化安装及永久激活详细教程(靠谱)
2020/01/16 Python
Python实现实时数据采集新型冠状病毒数据实例
2020/02/04 Python
python GUI库图形界面开发之PyQt5时间控件QTimer详细使用方法与实例
2020/02/26 Python
如何基于Python按行合并两个txt
2020/11/03 Python
Django正则URL匹配实现流程解析
2020/11/13 Python
Python扫描端口的实现
2021/01/25 Python
html5构建触屏网站之touch事件介绍
2013/01/07 HTML / CSS
html svg生成环形进度条的实现方法
2019/09/23 HTML / CSS
什么是GWT的Entry Point
2013/08/16 面试题
UNIX文件系统分类
2014/11/11 面试题
自主招生自荐信怎么写
2015/03/24 职场文书