从 PhpStorm 10 禁用 "expression expected"

Disabling "expression expected" from PhpStorm 10

我在 PhpStorm 10 中做了一些 react.js,即使在 JavaScript 语言级别启用了 JSX Harmony,它仍然会出现各种无意义的错误。

所以我完全禁用了对 JavaScript 的检查,但它仍然会出现 "expression expected" 或 "Expecting newline or semicolon" 等错误。

我如何为 JS 乘坐那些?

    <script type="text/babel">
        var MyComponent = React.createClass({
           render: function () {
               return <div>
               <h1><p>{this.props.text}</p></h1>
               </div>;
           }
        });

        React.render(<div><MyComponent text="text1" />
<MyComponent text="text2" /></div>, document.getElementById('container'));
    </script>

目前不支持带有 type="text/babel" 的内联脚本 -- IDE 目前只能将 text/jsx 识别为类型。

https://youtrack.jetbrains.com/issue/WEB-18276 -- 观看这张票 (star/vote/comment) 以获得进度通知。

可能的解决方法(据我所知):

  • 将类型更改为 text/jsx(但浏览器内的 babel 很可能不会转换它,除非你可以以某种方式配置它)
  • 将您的 JS 代码保存在单独的 .jsx 文件中

更新: (23/03/2016) 上述票证现在标记为 "Fixed" -- 此功能应该在 2016.1 的下一次更新中可用。