Intentando construir mi aplicación de electrones con texto mecanografiado generado a partir del proyecto electron-quick-start-typescript. He agregado un módulo adicional llamado auth.ts que no se reconoce cuando inicio la aplicación. Estoy tratando de hacer referencia a él en renderer.ts con
import { myfunction } from './auth'Sin embargo, puedo ver que se está convirtiendo en js. ¿Qué podría estar causando este problema? ¿Por qué mi aplicación no puede ver mi nuevo módulo?
Además, aquí está mi archivo package.json si eso ayuda.
{ "name": "electron-quick-start-typescript", "version": "1.0.0", "description": "A minimal Electron application written with Typescript", "scripts": { "build": "tsc", "watch": "tsc -w", "lint": "eslint -c .eslintrc --ext .ts ./src", "start": "npm run build && electron ./dist/main.js" }, "repository": "https://github.com/electron/electron-quick-start-typescript", "keywords": [ "Electron", "quick", "start", "tutorial", "demo", "typescript" ], "author": "GitHub", "license": "CC0-1.0", "devDependencies": { "@typescript-eslint/eslint-plugin": "^4.33.0", "@typescript-eslint/parser": "^4.33.0", "electron": "^16.0.2", "eslint": "^7.32.0", "typescript": "^4.5.2" }, "dependencies": { "node-fetch": "^2.6.1" } }Encontré la respuesta. Para cualquier otra persona que tenga el mismo problema, esto resolvió el problema:
Asegúrese de que nodeIntegration esté habilitado en main.js
webPreferences: { nodeIntegration: true, preload: path.join(__dirname, "preload.js"), },índice.html
reemplazar:
<script src="./dist/renderer.js"></script>con:
<script> require("./dist/renderer.js"); </script>