眼眸繁星
2023-04-14 15:11:10
我有一個集成了 electron 和 svelte 以及 typescript 支持的設置。當我運行rollup腳本來編譯 svelte 應用程序時,出現無法找到模塊./App.svelte錯誤,如下所示。Plugin typescript: @rollup/plugin-typescript TS2307: Cannot find module './App.svelte' or its corresponding type declarations.這是我的package.json配置:{ "name": "tapwire-electron-first", "productName": "tapwire-electron-first", "version": "1.0.0", "description": "My Electron application description", "main": "dist/index.js", "scripts": { "electron-start": "tsc && electron-forge start", "electron-package": "electron-forge package", "electron-make": "electron-forge make", "electron-publish": "electron-forge publish", "electron-lint": "eslint --ext .ts .", "svelte-build": "rollup -c", "svelte-dev": "rollup -c -w", "svelte-start": "sirv public", "svelte-validate": "svelte-check", "start": "run-p svelte-dev electron-start" }, "keywords": [], "author": { "name": "nateshmbhat", }, "license": "MIT", "config": { "forge": { "packagerConfig": {}, "makers": [ { "name": "@electron-forge/maker-squirrel", "config": { "name": "tapwire_electron_first" } }, { "name": "@electron-forge/maker-zip", "platforms": [ "darwin" ] }, { "name": "@electron-forge/maker-deb", "config": {} }, { "name": "@electron-forge/maker-rpm", "config": {} } ] } }, "devDependencies": { "@electron-forge/cli": "^6.0.0-beta.53", "@electron-forge/maker-deb": "^6.0.0-beta.53", "@electron-forge/maker-rpm": "^6.0.0-beta.53", "@electron-forge/maker-squirrel": "^6.0.0-beta.53", "@electron-forge/maker-zip": "^6.0.0-beta.53", "@rollup/plugin-commonjs": "^15.1.0", "@rollup/plugin-node-resolve": "^9.0.0", "@rollup/plugin-typescript": "^6.0.0", "@types/node": "^14.11.2", "@typescript-eslint/eslint-plugin": "^2.34.0", },
4 回答

一只名叫tom的貓
將此 tsconfig 添加為您的基本配置文件
TA貢獻1906條經驗 獲得超3個贊
結果我必須@tsconfig/svelte
先安裝為開發依賴項,然后用我的擴展它,tsconfig.json
如下所示:
安裝@tsconfig/svelte
npm i --save-dev @tsconfig/svelte
將此 tsconfig 添加為您的基本配置文件tsconfig.json
:
{ "extends": "@tsconfig/svelte/tsconfig.json", }

至尊寶的傳說
TA貢獻1789條經驗 獲得超10個贊
我這邊的罪魁禍首是陳舊的global.d.ts
。我已經/// <reference types="@sveltejs/kit" />
設置好,但正試圖將項目更改為香草 Svelte。將其固定為 have/// <reference types="svelte" />
就可以了。

慕桂英3389331
TA貢獻2036條經驗 獲得超8個贊
這個文件應該可以作為一個基本的 shim:
// svelte-shim.d.ts
declare module "*.svelte" {
? ? import type { ComponentType } from "svelte";
? ? const component: ComponentType;
? ? export default component;
}
這實質上告訴 TypeScript,它不知道如何處理的任何 .svelte 文件都應該作為 Svelte 組件讀取。您不會獲得他們導出的任何道具或方法,但如果您只需要使用他們的基本ComponentType界面,這應該可以正常工作。
添加回答
舉報
0/150
提交
取消