我在Atom中安装了JSLint和Atom-beautify(我相信这是jsbeautify的前端)。一般来说这是相当花花公子,除了他们争论三元运算符(我认为这是正确的术语)。所以如果我这样做
var theWindow = (thisObj instanceof Panel)? thisObj: new Window("palette", thisObj.scriptTitle, undefined, {resizeable: true});
JSBeautify会让它看起来像:
var theWindow = (thisObj instanceof Panel)
? thisObj
: new Window("palette", thisObj.scriptTitle, undefined, {resizeable: true});
然后JSLint会抱怨线路断线。
我查看了JSBeautify文档和JSLint文档,但我找不到任何更改任何关于三元语法的行为的选项。任何人都可以告诉我如何更改它,所以每次我美化我的代码时我都不必手动重新格式化我的所有三元函数?只要他们同意,我不介意哪一个占上风。
答案 0 :(得分:1)
你问的是jslint
(“lint”),但是使用的linter实际上是jshint
(“提示”。)
创建.jshintrc
文件并添加以下规则以容忍多行字符串
{
"multistr": true
}
你可能必须将"laxbreak"
设置为true,这可以容忍可能不安全的换行。有关所有可用选项,请参阅AngularJS documentation
答案 1 :(得分:1)
只需在"preserve_ternary_lines":true
中添加选项.jsbeautifyrc
即可
三元线表达式将不再被打破。
来自atom-beautify的相关变化:atom-beautify/pull/726