博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RubyMine ( IntelliJ 通用 ) 编辑 Slim + Vue.js 遇到文件无法打开的坑
阅读量:7144 次
发布时间:2019-06-29

本文共 886 字,大约阅读时间需要 2 分钟。

一. 状况说明

使用的环境是 Rails + Vue.js.

前端用的是 Slim + CoffeeScript + Sass
(确实比较小众啊, 公司用的环境没办法).
IDE 用的 IntelliJRubyMine
偶尔会发生.slim文件写着写着就崩溃, 现象是**文件无法录入任何字符,
有时文件内部不对键盘做出任何反应, 上下移动光标都不可以.
在重启RubyMine后, 出问题的文件无论如何也打不开.**

二. 找原因

第一次发生这种现象的时候不知道怎么折腾着就又好了, 所以就没深究, 但第三次就有点恼人了.

在重启/清内存/清缓存 不好使之后开始针对各种plugin 进行排查,
总算找到闹事的家伙:
Ruby Slim Support Integration

问题的来源是找到了, 但是原因呢?

Ruby Slim Support Integration这个插件是用来分析Slim的语法的.

可能是代码中哪个Slim语法它分析不出来, 导致运行时错误.
抱着这个可能性, 用逐行删除代码的方式排查了一上午, 终于被我找到一句:

#'[]' 用来包裹多个属性, 用于在元素属性过多的时候折行, 提高代码可读性img.feed_img.feed_thumb [:id="feed.id"     :    :large="feed.nodes[0][2]"     v-lazy="feed.thumbs[4]"     v-if="feed.error == 0"]

代码里[]用来包裹多个属性.

问题出在, 在[ 开始后的第一个新行里由冒号:开始时, 插件会无法分析语义.
这里我是准备输入Vue的 bind语法途中程序崩溃的.

三.解决方法 / 总结

解决方法就是小心不要在[下一行用:起头儿.

或者尽量不使用属性包裹[]
当然也不排除插件还有其他语义分析问题, 如果担心这种情况再次发生, 也可以索性吧插件关掉.
Preference => Plugin里关掉 Ruby Slim Support Integration 后面的对号:

clipboard.png

以上!

转载地址:http://dpwgl.baihongyu.com/

你可能感兴趣的文章
基于kubeadm的kubernetes高可用集群部署
查看>>
定位「数字化助手」,腾讯想用服务创新助力产业智慧升级
查看>>
golang之sync.Mutex互斥锁源码分析
查看>>
SAP增强的PA教材内容
查看>>
C#使用Xamarin开发可移植移动应用(3.Xamarin.Views控件)附源码
查看>>
Java 模拟基于UDP的Socket通信
查看>>
有关 Windows Lite 的一切,只为对抗 Chrome OS?
查看>>
NG-ZORRO 7.0.1 发布,Ant Design 的 Angular 实现
查看>>
scala笔记(三)
查看>>
大数据应用安全研究报告(11家公司实践详解)
查看>>
MES之殇和工业IOT之春
查看>>
阿里云网络漏洞扫描系统AVDS(商业化)发布
查看>>
python splinter 小坑说明
查看>>
控制input输入格式
查看>>
一次XEN启动中的错误捕获
查看>>
esxi嵌套华为Fusioncomputer安装VRM几个关键步骤。
查看>>
DNS设置引起的登录延迟
查看>>
saltstack之SLS文件
查看>>
JAVA构建缓存
查看>>
解决:Loading kernel module CAP_SYS_MODULE CAP_NET_ADMIN alias netdev-eth0 instead
查看>>