(PS 这些 SO 问题(标题不准确)都没有解决或解决此问题: React Linting: Unclosed Regular Expression 、 unclosed regular expression 、 React JSX error : Unclosed regular expression )
如何修复 jsx 结束标记上的 linting 错误:“未封闭的正则表达式”?
例如,此代码片段运行良好,但会导致 SublimeLinter 错误:
class Users extends React.Component {
render() {
var friends = this.props.list.filter(function(user){
return user.friend === true;
});
var nonFriends = this.props.list.filter(function(user){
return !user.friend;
});
return (
<div>
<h1>Friends</h1>
<ul>
...
</ul>
</div>
)
}
}
linter 在 </h1>
上犹豫不决结束 JSX 标记,认为它是正则表达式的开始。
1-2 of 2 errors: Unclosed regular expression; Unrecoverable syntax error. (42% scanned), 2 lines, 25 characters selected
我在Sublime Text3中安装的相关包:
SublimeLinter、SublimeLinter-contrib-eslint、JSHint、Babel
编辑:
我刚刚添加了包“JSX”,但这没有帮助。
我搜索了“sublimeLinter-jsxhint”包,但找不到它。
最佳答案
该扩展在完整的 jsx 文件上运行 jshint,而 jshint 不支持 jsx 语法及其功能。 我只是使用 -> (代码 -> 首选项 -> 设置 -> 用户扩展 -> JSHint 配置 -> JSHint:Enable 复选框 -> 关闭)关闭了 JShint
一种解决方案是使用 /* jshintignore: start */
和 /* jshintignore: end */
手动关闭返回 HTML 的函数周围的 jshint。
关于reactjs - 如何修复 jsx 结束标签 : "unclosed regular expression"? 上的 linting 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45720682/