详解在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 相关文章推荐
setInterval 和 setTimeout会产生内存溢出
Feb 15 Javascript
jQuery中after的两种用法实例
Jul 03 Javascript
jQuery对html元素取值与赋值的方法
Nov 20 Javascript
JS测试显示屏分辨率以及屏幕尺寸的方法
Nov 22 Javascript
JS 使用for循环遍历子节点查找元素
Sep 06 Javascript
Javascript中的包装类型介绍
Apr 02 Javascript
JSON遍历方式实例总结
Dec 07 Javascript
一道关于JavaScript变量作用域的面试题
Mar 08 Javascript
jQuery实现表格与ckeckbox的全选与单选功能
Nov 24 Javascript
react实现点击选中的li高亮的示例代码
May 24 Javascript
Vue如何实现响应式系统
Jul 11 Javascript
微信小程序如何获取群聊的openGid以及名称详解
Jul 17 Javascript
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
《OVERLORD》第四季,终于等到你!
2020/03/02 日漫
php的计数器程序
2006/10/09 PHP
phpwind中的数据库操作类
2007/01/02 PHP
PHP 抓取网页图片并且另存为的实现代码
2010/03/24 PHP
用C/C++扩展你的PHP 为你的php增加功能
2012/09/06 PHP
屏蔽机器人从你的网站搜取email地址的php代码
2012/11/14 PHP
php合并数组并保留键值的实现方法
2018/03/12 PHP
Prototype1.6 JS 官方下载地址
2007/11/30 Javascript
使用Javascript接收get传递的值的代码
2011/11/30 Javascript
Js控制滑轮左右滑动实例
2015/02/13 Javascript
javascript实现html页面之间参数传递的四种方法实例分析
2015/12/15 Javascript
js实现精确到秒的日期选择器完整实例
2016/04/30 Javascript
JavaScript语言精粹经典实例(整理篇)
2016/06/07 Javascript
Jquery获取当前城市的天气信息
2016/08/05 Javascript
vue.js入门教程之绑定class和style样式
2016/09/02 Javascript
js实现旋转木马效果
2017/03/17 Javascript
JavaScript实现打地鼠小游戏
2020/04/23 Javascript
vue初尝试--项目结构(推荐)
2018/01/30 Javascript
ionic grid(栅格)九宫格制作详解
2018/06/30 Javascript
vue中导出Excel表格的实现代码
2018/10/18 Javascript
基于vue实现圆形菜单栏组件
2019/07/05 Javascript
解决vue项目打包上服务器显示404错误,本地没出错的问题
2020/11/03 Javascript
[01:03]DOTA2新的征程 你的脚印值得踏上
2014/08/13 DOTA
Python用5行代码写一个自定义简单二维码
2018/10/21 Python
Python随机生成身份证号码及校验功能
2018/12/04 Python
Python循环中else,break和continue的用法实例详解
2019/07/11 Python
Python函数的迭代器与生成器的示例代码
2020/06/18 Python
深入了解canvas在移动端绘制模糊的问题解决
2019/04/30 HTML / CSS
Nike德国官网:Nike.com (DE)
2018/11/13 全球购物
西安夏日科技有限公司Java笔试题
2013/01/11 面试题
本科生求职简历的自我评价
2013/10/21 职场文书
大专生自我鉴定怎么写
2014/09/16 职场文书
简单租房协议书(范本)
2014/10/13 职场文书
布达拉宫导游词
2015/02/02 职场文书
运动会宣传语
2015/07/13 职场文书
JS实现数组去重的11种方法总结
2022/04/04 Javascript