详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持


Posted in Javascript onOctober 21, 2017

本文介绍了详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持,分享给大家,具体如下:

一个小遗憾

详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持 

能来看这篇文章的想必不用我来介绍vue是什么了。先让我们膜拜大神!vue项目的创建者尤大写了个sublime下语法高亮的插件,有人问他how about webstorm support?他是这么回答的。默哀一分钟。

添加高亮和语法支持

这个我是通过插件来实现的。网上目前有两个插件:

插件1:https://github.com/henjue/vue-for-idea

插件2:https://github.com/postalservice14/vuejs-plugin

我现在用的是插件1。

它能提供一点的语法和代码高亮还有一个文件模板。

就是你在左侧工程栏右键新建的时候会有vue文件了。

详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持

然而他的语法支持实在有限,你还是别抱太大希望。。一些cmd+点击的跳转都不能实现。

我还去设置内添加了额外的帮助:

详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持 

这是由这个组织维护在github上的一个语法列表,在webstorm上安装了之后会有对应的语法提示。进入设置中的这里,点击右边的download,就会出现这个列表,选择上面的源,一共有两个选项,选择第二个,就出现这个列表了。找到vue,安装就可以了。

但是感觉在.vue文件中作用也不是很大。。。

添加ES6支持

首先,你要设置webstorm自身的JavaScript的版本。如图:

详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持 

这里默认是ES5.1,把它改成ES6。

然后打开设置:

详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持 

找到这个地方,找到上面的html类型,将*.vue添加进其中。确定的时候会提示被占用了,要把那个清除掉,继续就OK了。
这样系统会把.vue文件看成html,也就能正确识别里面的<script>标签了。

如果你不想这样做,那也可以。还有一种方法。
直接在<script>标签中添加type="text/ecmascript-6",这样也是OK的,里面的代码也会高亮并支持ES6。

支持sass

看过vue-loader文档的知道,在*.vue模板中是支持几种css预处理器和模板语言jade的。
但是当你在<style>标签中加上lang=sass然后写sass时会发现IDE一片报错。。一开始我想到的是webstorm的Language Injections,并照着已有的写了一个:

详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持 

然而并不能用。。。

去谷歌了下,发现也有人这么做了,然而也没有成功。。至于为什么也没搞清楚。。倒是知道了jade是模板语言,不能这么做。

但是sass不应该啊。。

然而也不是没有收获。

发现了<style>标签中有rel="stylesheet/scss"type="text/css"时能正确识别sass语言。如:

<style scoped lang="sass" rel="stylesheet/scss" type="text/css">

同理less也可以。但是需要webstorm版本高于2016.1.1

关于jade支持

我还不会jade模板语言。但是在找sass支持的过程中发现有人这么“曲线救国”的支持了jade:

详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持

同时我也发现了vue-idea-plugin插件的作者不靠谱的承诺,戳这里,说会支持jade,但是没有具体的时间。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery Validation实例代码 让验证变得如此容易
Oct 18 Javascript
Moment.js 不容错过的超棒Javascript日期处理类库
Apr 15 Javascript
Javascript控制页面链接在新窗口打开具体方法
Aug 16 Javascript
JavaScript基础语法、dom操作树及document对象
Dec 02 Javascript
javascript中使用new与不使用实例化对象的区别
Jun 22 Javascript
js和C# 时间日期格式转换的简单实例
May 28 Javascript
在Docker快速部署Node.js应用的详细步骤
Sep 02 Javascript
JS前端开发判断是否是手机端并跳转操作(小结)
Feb 05 Javascript
JS模拟实现ECMAScript5新增的数组方法
Mar 20 Javascript
vue路由切换时取消之前的所有请求操作
Sep 01 Javascript
浅谈JavaScript 声明提升
Sep 14 Javascript
vue动态设置路由权限的主要思路
Jan 13 Vue.js
Vue filter介绍及其使用详解
Oct 21 #Javascript
详解node nvm进行node多版本管理
Oct 21 #Javascript
JS实现瀑布流布局
Oct 21 #Javascript
js实现Tab选项卡切换效果
Jul 17 #Javascript
js实现鼠标移动到图片产生遮罩效果
Oct 21 #Javascript
js注册时输入合法性验证方法
Oct 21 #Javascript
angular4实现tab栏切换的方法示例
Oct 21 #Javascript
You might like
PHP中unset,array_splice删除数组中元素的区别
2014/07/28 PHP
ECMAScript 基础知识
2007/06/29 Javascript
Javascript的并行运算实现代码
2010/11/19 Javascript
jquery得到iframe src属性值的方法
2014/09/25 Javascript
jquery实现搜索框常见效果的方法
2015/01/22 Javascript
使用jQuery实现返回顶部
2015/01/26 Javascript
在Node.js应用中读写Redis数据库的简单方法
2015/06/30 Javascript
JQuery ztree 异步加载实例讲解
2016/02/25 Javascript
学习Javascript闭包(Closure)知识
2016/08/07 Javascript
AngularJS之依赖注入模拟实现
2016/08/19 Javascript
详解http访问解析流程原理
2017/10/18 Javascript
微信小程序canvas实现刮刮乐效果
2018/07/09 Javascript
VUE+elementui组件在table-cell单元格中绘制微型echarts图
2020/04/20 Javascript
JavaScript实现打字游戏
2021/02/19 Javascript
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
Python引用(import)文件夹下的py文件的方法
2014/08/26 Python
Python实现二分查找与bisect模块详解
2017/01/13 Python
tensorflow实现softma识别MNIST
2018/03/12 Python
python3中获取文件当前绝对路径的两种方法
2018/04/26 Python
python中dir()与__dict__属性的区别浅析
2018/12/10 Python
在python中按照特定顺序访问字典的方法详解
2018/12/14 Python
python 使用poster模块进行http方式的文件传输到服务器的方法
2019/01/15 Python
python自定义线程池控制线程数量的示例
2019/02/22 Python
python对csv文件追加写入列的方法
2019/08/01 Python
计算pytorch标准化(Normalize)所需要数据集的均值和方差实例
2020/01/15 Python
美容师的职业规划书
2013/12/27 职场文书
表决心的诗句大全
2014/03/11 职场文书
五年级上册复习计划
2015/01/19 职场文书
政协委员个人总结
2015/03/03 职场文书
学习焦裕禄观后感
2015/06/09 职场文书
清明节主题班会
2015/08/14 职场文书
干货:我将这样书写我的演讲稿!
2019/05/09 职场文书
JPA如何使用entityManager执行SQL并指定返回类型
2021/06/15 Java/Android
带你了解CSS基础知识,样式
2021/07/21 HTML / CSS
详解python的异常捕获
2022/03/03 Python
Python 一键获取电脑浏览器的账号密码
2022/05/11 Python