未定义打字稿和电子导出

Ahm*_*ğlu 7 commonjs typescript electron

我正在尝试运行我的简单电子应用程序。我使用 Typescript 作为编译成 JavaScript 的开发语言。当我运行该应用程序时,出现以下错误:

ReferenceError: exports is not defined[Learn More]
file:///Users/ahmet/Documents/JumbleUp-Desktop/dist/Login/Login.js:5
exports.__esModule = true;
Run Code Online (Sandbox Code Playgroud)

我的 login.ts 文件看起来像这样

    import firebase from "firebase";

firebase.auth().onAuthStateChanged(function(user) {
    if (user) {
        location.replace("index.html");
    } else {
        location.replace("login.html");
    }
  });
function login() {
    const userEmail = (document.getElementById("inputEmail") as HTMLInputElement).value;
    const userPassword = (document.getElementById("inputPassword") as HTMLInputElement).value;

    firebase.auth().createUserWithEmailAndPassword(userEmail, userPassword).catch(function(error) {
        // Handle Errors here.
        var errorCode = error.code;
        var errorMessage = error.message;
        // ...

        window.alert("Alert : " + errorMessage);
      });
}
Run Code Online (Sandbox Code Playgroud)

这里是我的 tsconfig 文件

{
    "compilerOptions": {
      "module": "commonjs",
      "noImplicitAny": true,
      "sourceMap": true,
      "esModuleInterop": true,
      "outDir": "dist",
      "baseUrl": ".",
      "paths": {
        "*": ["node_modules/*"]
      }
    },
    "include": [
      "src/**/*"
    ]
  } 
Run Code Online (Sandbox Code Playgroud)

Kub*_*lik 15

我遇到了同样的问题。对我来说,问题不在于文件的转换方式,而在于它们如何包含在index.html.

改变:

<script src="./main.js"></script>
Run Code Online (Sandbox Code Playgroud)

<script>
   require("./main.js")
</script>
Run Code Online (Sandbox Code Playgroud)

在 index.html 中

为我解决了

  • 谢谢你回来!它也开始为我工作(可能是在创建“BrowserWindow”时将“webPreferences”下的“nodeIntegration”设置为“true”之后) (4认同)
  • 它有效,但我必须将“不安全内联”添加到内容安全策略中。原文:`&lt;meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'"&gt; &lt;meta http-equiv="X-Content-Security-Policy" 内容="default-src 'self'; script-src 'self'"&gt;` 工作: `&lt;meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline'"&gt; &lt;meta http-equiv="X-Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline'"&gt;` (3认同)