gpt4 book ai didi

reactjs - 找不到 typescript 模块无法解决

转载 作者:行者123 更新时间:2023-12-03 16:15:28 26 4
gpt4 key购买 nike

我正在构建一个 react + typescript 应用程序,我在其中创建了一个模块,该模块具有在我的项目类中使用的所有接口(interface)。我的 IDE 很好地解析了这些接口(interface),但 webpack 总是发送以下错误。我尝试了不同的东西,但无法让那个消失。
任何帮助将不胜感激

ERROR in ./assets/src/Pages/Login.tsx Module not found: Error: Can't resolve 'seeyouftp' in 'var/www/app/assets/src/Pages'
@ ./assets/src/Pages/Login.tsx 43:18-38
@ ./assets/src/Config/App.tsx
@ ./assets/entries/bundle.js
我的定义文件在这里
|— definitions
|— types.d.ts
|— entries
|— fonts
|— less
|— src
我的定义文件的摘录
declare module 'seeyouftp' {
interface User {
admin: boolean;
roles: string[];
username: string;
}

enum AuthStates {
success = 'success',
error = 'error'
}
tsconfig.json
{
"compilerOptions": {
"allowJs": true,
"allowUnreachableCode": false,
"baseUrl": "./assets",
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true,
"jsx": "react",
"lib": [
"dom",
"es2019",
"esnext"
],
"module": "commonjs",
"moduleResolution": "node",
"noImplicitAny": true,
"noImplicitReturns": true,
"outDir": "./dist/",
"resolveJsonModule": true,
"skipDefaultLibCheck": true,
"sourceMap": true,
"strictPropertyInitialization": false,
"strictNullChecks": true,
"target": "es5",
"typeRoots": [
"./assets/definitions/types.d.ts",
"./node_modules/@types"
],
"types": [
"node"
]
},
"include": [
"./assets/src/**/*",
"./assets/definitions/**/*"
],
"exclude": [
"node_modules"
]
}
我像这样导入创建的接口(interface): import { Item, PlayableMedia } from 'seeyouftp';

最佳答案

该错误消息实际上非常具有误导性,看起来像是一个 typescript 错误。
看来 enums不能直接导出,看来需要使用 const能够正确导出它们。
所以我修改了我的enum像这样声明

declare module 'seeyouftp' {

// exporting a const instead of
export const enum AuthStates {
success = 'success',
error = 'error'
}
}
现在一切正常,但是该错误消息非常非常糟糕且耗时

关于reactjs - 找不到 typescript 模块无法解决,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62483612/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com