【发布时间】:2022-10-20 08:16:04
【问题描述】:
我正在尝试使用 Typescript 构建一个在 Electron 上运行的客户端,但是,我从 request.ts 文件中收到错误。
当我尝试导入electron 时,我从Electron Typescript quickstart 获得的main.ts 上也会发生同样的事情。
tsconfig.json 配置如下:
{
"compilerOptions": {
"module": "ES2015",
"noImplicitAny": true,
"sourceMap": true,
"outDir": "dist",
"baseUrl": ".",
"allowSyntheticDefaultImports": true,
"types": [ "node" ],
"paths": {
"*": ["node_modules/*"]
}
},
"include": [
"src/**/*"
]
}
我确保baseUrl 指向node-modules 所在的目录,所以我确信编译器可以找到node-modules。
只是为了向您保证 axios 和 electron 已安装,这里是 package.json:
{
"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 --no-sandbox ./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": {
"@types/axios": "^0.14.0",
"@types/electron": "^1.6.10",
"@types/jquery": "^3.5.14",
"@types/node": "^17.0.42",
"@typescript-eslint/eslint-plugin": "^4.33.0",
"@typescript-eslint/parser": "^4.33.0",
"electron": "^18.2.3",
"eslint": "^7.32.0",
"typescript": "^4.7.2"
},
"dependencies": {
"axios": "^0.27.2",
"jquery": "^3.6.0"
}
}
当我将模块指定为commonjs 时,我可以让它运行,但我也会收到错误,因为tsc 将导入语句编译为浏览器不支持的require。
我尝试使用tspath,但我无法在其中运行,因为我使用的是 Windows 11。我也尝试提供相对路径,但最终出现错误,提示“没有找到这些文件的声明”。我非常感谢有关如何解决此问题的任何提示。提前致谢。
【问题讨论】:
标签: typescript electron