如果您创建了一个React文件但是使用.js
扩展名保存它,那么GitHub代码突出显示会在文本中达到单引号时中断。在.jsx
中保存相同的文件可以正常工作。
请参阅this repo上的示例。文件correct-highlighting.jsx
和incorrect-highlighting.js
都具有相同的内容。尽可能地,.js
语法突出显示错误。
在使用.jx
扩展程序的同时还有解决方法吗?
答案 0 :(得分:2)
基于Linguist readme的有点麻烦的解决方案是向文件添加vim或emacs模式。看起来您可以在JS注释中添加它以保持源有效,同时在GH上保持正确的语法格式。
https://gist.github.com/ryanjduffy/50ba7c8d8adcbe1615cb016bf799cc69
console.watch(obj, "someProp");
答案 1 :(得分:1)
看起来你可以在github上强制文件的语法。 https://webapps.stackexchange.com/questions/31654/force-github-syntax-highlighting-language-on-source-files
答案 2 :(得分:1)
不幸的是,当文件具有.js扩展名时,您看到错误的JSX突出显示的原因是因为.jsx是不正确的JavaScript语法,因此GitHub具有准确的语法高亮显示和语言检测gem(Linguist )JSX语法没有正确突出显示。
.js扩展名纯粹主义者存在此问题,因为文本编辑器可以更改哪些类型的文件被视为某些类型的扩展名。我知道一些语法高亮插件包含.js文件作为有效的扩展名来处理.jsx,但也可以删除,因为如果你在没有React的情况下运行它自己的文件,它显然不会&# 39;工作。
然而,您可以主动提出并在Linguist中提交(或参与)一个问题,并要求github将JSX语法突出显示扩展为扩展名为.js的文件。