RubyMine ( IntelliJ 通用 ) 编辑 Slim + Vue.js 遇到文件无法打开的坑

一. 状况说明

使用的环境是 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

以上!

2 声望
1 粉丝
0 条评论
推荐阅读
RVM切换到rbenv[MacOS]
起初看着RVM功能要比rbenv多, 所以选择了RVM来管理ruby的版本, 但经过一段时间的使用发现对于ruby版本的控制还是rbenv方便些, 而且Gemset的设置多少有点麻烦, 设置不好连rails创建项目都报错. 所以索性换成rbenv.

alfredhot阅读 1.4k

封面图
Vue中的diff算法
diff算法是一种通过同层的树节点进行比较的高效算法,避免了对树进行逐层搜索遍历,所以时间复杂度只有 O(n)。diff算法的在很多场景下都有应用,例如在 vue 虚拟 dom 渲染成真实 dom 的新旧 VNode 节点比较更新时...

款冬27阅读 13.3k评论 7

给我实现一个前端的 Excel 导入和导出功能
前言【负责人 A】:现在报表部分基于接口的 Excel 的导入和导出功能有点慢,前端这边能不能实现一下这个功能,然后我们在比对看看效果!【切图仔 B】: 接口这边不能优化一下吗?比如排查下慢的原因什么的。【负...

熊的猫19阅读 2.5k

封面图
vue中style scope深度访问新方式(:deep())
1、>>>如果vue的style使用的是css,那么则 {代码...} 但是像scss等预处理器却无法解析>>>,所以我们使用下面的方式.2、/deep/ {代码...} 但是有些开发者反应,在vue-cli3编译时,deep的方式会...

寒水寺一禅11阅读 34.8k评论 9

一个开源vue网站博客,nuxt开源网站,前后端分离项目
开媛笔记,基于nuxt ssr首屏服务器端渲染 。用于分享、记录、交流和学习,希望可以帮助到小伙伴们。同时网站在不断更新,创造属于猿(媛)的世界 -$Bao Yalong ..Let's Go! [链接]

jigsaw16阅读 8.4k评论 3

你知道前端水印功能是怎么实现的吗?
前一段时间由于项目需要实现水印功能,于是去了解了相关的内容后,基于 Vue 的实现了一个 v-watermark 指令完成了对应的功能,其实整体内容并不复杂!

熊的猫14阅读 1.6k

封面图
2022 你还不会微前端吗 (上) — 从巨石应用到微应用
微前端系列分为 上/下 两篇,本文为 上篇 主要还是了解微前端的由来、概念、作用等,以及基于已有的微前端框架进行实践,并了解微前端的核心功能所在,而在下篇 2022 你还不会微前端吗 (下) — 揭秘微前端核心原理...

熊的猫14阅读 1.6k

封面图
2 声望
1 粉丝
宣传栏