webstorm添加*.vue文件支持


Posted in Javascript onMay 08, 2018

这篇文章写了有1年多了,发现这篇文章关注的人不少。现在Webstorm要支持vue已经有了更方便的方式。避免误导,还是来更新下。

方法1:安装 Vue.js 插件

打开 Settings->Plugins 搜索安装

css预处理器支持

在我写这文章的时间,还没有支持预处理的方案,不过现在已经很简单了。

给 style 标签加上 rel=”stylesheet/scss” 属性即可支持 scss 语法,看规则可以改成 less stylus 之类的。

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

方法2:Webstorm EAP 版已经原生支持vue文件

看这里 https://blog.jetbrains.com/webstorm/2017/02/webstorm-2017-1-eap-171-2822/ EAP版可能不太稳定,不过也能用。
或者等过段时间发布的 Webstorm 2017.1 稳定版。

不得不说vue真是越用越厉害了啊,Webstorm也开始支持了。最后 原生支持才是最好的

以下内容过时,针对旧版本的Webstorm

webstorm是前端开发神器,但我一直都不喜欢webstorm,就因为那很挫的配色和那大光标。

上阵子开始玩 Vuejs,在 Vue 中,可以 .vue 文件实现组件化,但各种编辑器都支持不好,作者也给sublime开发了相关的vue插件。我觉得用sublime就是在浪费生命啊,花那么多时间来装插件配环境,我选择IDE!

坚持用sublime写了一个月的vue,没有智能提示(而对重度依赖提示),不能对代码进行格式化,手动调缩进,尼玛,能坚持这么久也不容易。所以折腾了下webstorm看怎么支持,所以就有这篇笔记。

vue支持

打开 Settings => File Types 找到 HTML 添加 *.vue

webstorm添加*.vue文件支持

这样vue文件就相当于html文件,可以编辑css,js,也都有智能提示。

我一般用的是 es6 ,所以vue写es6的代码,webstorm还是会报错。

vue里ES6支持

将script标签添加 type=”es6” 属性

<script type="es6">
</script>

然后打开 Settings => Language Injections 添加 XML Tag Injection,内容如下图。

webstorm添加*.vue文件支持

*.js 支持ES6

webstorm默认js文件是ES5语法

打开 Settings => Languages & Frameworks => Javascript

把 Javascript Language version 改为 ECMAScript 6

webstorm添加*.vue文件支持

PS:要在vue文件里写sass,stylus之类的css预处理,webstorm就不支持了,我也尝试了添加 Injection ,代码高亮正常,但却是临时的,只要一改动代码,又会划很多红线了,经过google,这似乎是webstorm的一个已知的Bug。

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

Javascript 相关文章推荐
cnblogs 代码高亮显示后的代码复制问题解决实现代码
Dec 14 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
Dec 18 Javascript
jQuery中[attribute!=value]选择器用法实例
Dec 31 Javascript
javascript实现根据iphone屏幕方向调用不同样式表的方法
Jul 13 Javascript
异步JS框架的作用以及实现方法
Oct 29 Javascript
轻松掌握JavaScript单例模式
Aug 25 Javascript
jQuery实现滚动效果
Nov 17 jQuery
详解vue.js数据传递以及数据分发slot
Jan 20 Javascript
学习React中ref的两个demo示例
Aug 14 Javascript
详解koa2学习中使用 async 、await、promise解决异步的问题
Nov 13 Javascript
小程序input数据双向绑定实现方法
Oct 17 Javascript
vue中动态select的使用方法示例
Oct 28 Javascript
浅谈vue项目如何打包扔向服务器
May 08 #Javascript
Javascript实现购物车功能的详细代码
May 08 #Javascript
vue-cli 如何打包上线的方法示例
May 08 #Javascript
使用vue-cli打包过程中的步骤以及问题的解决
May 08 #Javascript
详解React-Router中Url参数改变页面不刷新的解决办法
May 08 #Javascript
angularjs实现的购物金额计算工具示例
May 08 #Javascript
Vue微信项目按需授权登录策略实践思路详解
May 07 #Javascript
You might like
php调用google接口生成二维码示例
2014/04/28 PHP
PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法
2014/05/04 PHP
thinkphp实现163、QQ邮箱收发邮件的方法
2015/12/18 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
2017/11/14 PHP
让iframe子窗体取父窗体地址栏参数(querystring)
2009/10/13 Javascript
ASP.NET jQuery 实例2 (表单中使用回车在TextBox之间向下移动)
2012/01/13 Javascript
谈谈关于JavaScript 中的 MVC 模式
2013/04/11 Javascript
jquery制作居中遮罩层效果分享
2014/02/21 Javascript
调用jQuery滑出效果时闪烁的解决方法
2014/03/27 Javascript
JQuery做的一个简单的点灯游戏分享
2014/07/16 Javascript
jQuery选择器源码解读(六):Sizzle选择器匹配逻辑分析
2015/03/31 Javascript
JavaScript搜索字符串并将搜索结果返回到字符串的方法
2015/04/06 Javascript
JS排序算法之冒泡排序,选择排序与插入排序实例分析
2017/12/13 Javascript
解决koa2 ctx.render is not a function报错问题
2018/08/07 Javascript
js实现文件上传功能 后台使用MultipartFile
2018/09/08 Javascript
vue2.0获取鼠标位置的方法
2018/09/13 Javascript
JavaScript实现无限级递归树的示例代码
2019/03/29 Javascript
vue中echarts图表大小适应窗口大小且不需要刷新案例
2020/07/19 Javascript
vscode 使用Prettier插件格式化配置使用代码详解
2020/08/10 Javascript
JavaScript通如何过RGraph实现动态仪表盘
2020/10/15 Javascript
[00:36]DOTA2勇士令状莱恩声望物品——冥晶之厄展示
2018/05/25 DOTA
python的描述符(descriptor)、装饰器(property)造成的一个无限递归问题分享
2014/07/09 Python
将Python的Django框架与认证系统整合的方法
2015/07/24 Python
Python书单 不将就
2017/07/11 Python
python从zip中删除指定后缀文件(推荐)
2019/12/05 Python
Django:使用filter的pk进行多值查询操作
2020/07/15 Python
CSS3效果:自定义“W”形运行轨迹实例
2017/03/29 HTML / CSS
工程学毕业生自荐信
2014/06/14 职场文书
民政局个人整改措施
2014/09/24 职场文书
机械专业毕业生自我鉴定2014
2014/10/04 职场文书
车间质检员岗位职责
2015/04/08 职场文书
公司劳动纪律管理制度
2015/08/04 职场文书
redis 查看所有的key方式
2021/05/07 Redis
使用Oracle跟踪文件的问题详解
2021/06/28 Oracle
Python实现打乒乓小游戏
2021/09/25 Python
「我的青春恋爱物语果然有问题。-妄言录-」第20卷封面公开
2022/03/21 日漫