- 时间:2022-06-25 04:13 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持
本文介绍了详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持,分享给大家,具体如下:
[b]一个小遗憾[/b]
[img]http://files.jb51.net/file_images/article/201710/2017102114101157.jpg[/img]
能来看这篇文章的想必不用我来介绍vue是什么了。先让我们膜拜大神!vue项目的创建者尤大写了个sublime下语法高亮的插件,有人问他how about webstorm support?他是这么回答的。默哀一分钟。
[b]添加高亮和语法支持[/b]
这个我是通过插件来实现的。网上目前有两个插件:
插件1:[url=https://github.com/henjue/vue-for-idea]https://github.com/henjue/vue-for-idea[/url]
插件2:[url=https://github.com/postalservice14/vuejs-plugin]https://github.com/postalservice14/vuejs-plugin[/url]
我现在用的是插件1。
它能提供一点的语法和代码高亮还有一个文件模板。
就是你在左侧工程栏右键新建的时候会有vue文件了。
[img]http://files.jb51.net/file_images/article/201710/2017102114101158.jpg[/img]
然而他的语法支持实在有限,你还是别抱太大希望。。一些[code]cmd+点击[/code]的跳转都不能实现。
我还去设置内添加了额外的帮助:
[img]http://files.jb51.net/file_images/article/201710/2017102114101159.jpg[/img]
这是由[url=http://definitelytyped.org/]这个[/url]组织维护在github上的一个语法列表,在webstorm上安装了之后会有对应的语法提示。进入设置中的这里,点击右边的[code]download[/code],就会出现这个列表,选择上面的源,一共有两个选项,选择第二个,就出现这个列表了。找到vue,安装就可以了。
但是感觉在.vue文件中作用也不是很大。。。
[b]添加ES6支持[/b]
首先,你要设置webstorm自身的JavaScript的版本。如图:
[img]http://files.jb51.net/file_images/article/201710/2017102114101260.jpg[/img]
这里默认是ES5.1,把它改成ES6。
然后打开设置:
[img]http://files.jb51.net/file_images/article/201710/2017102114101261.jpg[/img]
找到这个地方,找到上面的html类型,将*.vue添加进其中。确定的时候会提示被占用了,要把那个清除掉,继续就OK了。
这样系统会把.vue文件看成html,也就能正确识别里面的[code]<script>[/code]标签了。
如果你不想这样做,那也可以。还有一种方法。
直接在[code]<script>[/code]标签中添加[code]type="text/ecmascript-6"[/code],这样也是OK的,里面的代码也会高亮并支持ES6。
[b]支持sass[/b]
看过[url=https://vue-loader.vuejs.org/en/index.html]vue-loader[/url]文档的知道,在*.vue模板中是支持几种css预处理器和模板语言[code]jade[/code]的。
但是当你在[code]<style>[/code]标签中加上[code]lang=sass[/code]然后写sass时会发现IDE一片报错。。一开始我想到的是webstorm的[code]Language Injections[/code],并照着已有的写了一个:
[img]http://files.jb51.net/file_images/article/201710/2017102114101262.jpg[/img]
然而并不能用。。。
去谷歌了下,发现也有人这么做了,然而也没有成功。。至于为什么也没搞清楚。。倒是知道了jade是模板语言,不能这么做。
但是sass不应该啊。。
然而也不是没有收获。
发现了[code]<style>[/code]标签中有[code]rel="stylesheet/scss"[/code]和[code]type="text/css"[/code]时能正确识别[code]sass[/code]语言。如:
<style scoped lang="sass" rel="stylesheet/scss" type="text/css">
同理[code]less[/code]也可以。但是需要webstorm版本高于[code]2016.1.1[/code]。
[b]关于jade支持[/b]
我还不会jade模板语言。但是在找sass支持的过程中发现有人这么“曲线救国”的支持了jade:
[img]http://files.jb51.net/file_images/article/201710/2017102114101263.jpg[/img]
同时我也发现了vue-idea-plugin插件的作者不靠谱的承诺,[url=https://www.bountysource.com/issues/34566675-lang-jade-not-supported]戳这里[/url],说会支持[code]jade[/code],但是没有具体的时间。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程素材网。