【问题标题】:Using TSX files with electron-compile error使用带有电子编译错误的 TSX 文件
【发布时间】:2018-01-12 12:36:49
【问题描述】:

我正在尝试使用 electron-compile-prebuilt 编译我的电子程序。 React 和 typescript 应该是开箱即用的,但是它会从 React 标记标签Uncaught SyntaxError: Unexpected token < 中引发控制台错误,

是否需要使用编译器选项来支持 TSX 中的 React 语法?转换成 JSX 后就可以了。

【问题讨论】:

    标签: reactjs typescript electron


    【解决方案1】:

    确保您在项目的根目录中有一个.compilerc,并且您已为text/typescript MIME 类型定义了TypeScript 编译器选项。您的 TypeScript 编译器选项必须包含 "jsx": "react" 选项。

    这是我的.compilerc

    {
      "env": {
        "development": {
          "application/javascript": {
            "presets": ["es2016-node5", "react"],
            "sourceMaps": "inline"
          },
          "text/typescript":{
            "target": "es6",
            "module": "commonjs",
            "sourceMap":true,
            "inlineSourceMap": true,
            "emitDecoratorMetadata": true,
            "experimentalDecorators": true,
            "removeComments": false,
            "noImplicitAny": false,
            "allowJs": true,
            "jsx": "react"
          }
        },
        "production": {
          "application/javascript": {
            "presets": ["es2016-node5", "react"],
            "sourceMaps": "none"
          },
          "text/typescript":{
            "target": "es6",
            "module": "commonjs",
            "sourceMap":false,
            "emitDecoratorMetadata": true,
            "experimentalDecorators": true,
            "removeComments": false,
            "noImplicitAny": false,
            "allowJs": true,
            "jsx": "react"
          }
        }
      }
    }
    

    【讨论】:

    • 对我来说,添加文本/打字稿解决了语法错误。但是我仍然得到TypeError: Cannot read property 'createElement' of undefined。 js 和 jsx 工作正常。有什么想法吗?
    • document 对象在主进程中不存在。你是在主进程还是渲染进程中使用document
    猜你喜欢
    • 2017-05-08
    • 1970-01-01
    • 1970-01-01
    • 2021-04-20
    • 2020-06-17
    • 2020-12-17
    • 2018-03-20
    • 2019-03-29
    相关资源
    最近更新 更多