我目前在 React Native 应用程序 https://github.com/goatandsheep/react-native-dotenv 中使用处理 .env 时遇到了一些问题。
错误 => 无法从“src/api/api.ts”中找到模块“@env”
我目前正在测试我的 redux saga 以调用 api 端点:
import axios from 'axios';
import {API_URL} from '@env';
export default axios.create({
baseURL: API_URL,
responseType: 'json',
});
API 端点
export const sendCheckNumber = async (
phoneNumber: string,
): Promise<AuthenticationTO> => {
const response = await axios.get<AuthenticationTO>(
`SendCheckNumber/${phoneNumber}`,
);
return response.data;
};
我正在使用 ts-jest package.json。我在文档中看到有可能在 ts-jest 中包含 bable,因为我使用 bable 将“module:react-native-dotenv”作为插件导入。我认为这已经解决了我的问题,但不幸的是它仍然失败。也许你们中的某个人有什么可能导致此错误的建议。
谢谢!!!
package.json
"jest": {
"preset": "react-native",
"transform": {
"^.+\\.js$": "<rootDir>/node_modules/react-native/jest/preprocessor.js",
"\\.(ts|tsx)$": "ts-jest"
},
"globals": {
"ts-jest": {
"babelConfig": "babel.config.js",
"tsConfig": "tsconfig.jest.json"
}
},
"moduleFileExtensions": [
"ts",
"tsx",
"js"
],
"modulePaths": [
"<rootDir>/src"
],
"testRegex": "(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$"
}
答案 0 :(得分:-1)
这里的饲养员山羊和绵羊。我最近添加了一些关于如何完成的文档。看看documentation section on TypeScript。摘录如下:
<块引用>types
文件夹*.d.ts
文件,例如 env.d.ts
declare module '@env' {
export const API_BASE: string;
}
在此模块中添加所有 .env 变量。
typeRoots
文件的 tsconfig.json
字段中:{
"typeRoots": ["./src/types"],
}
让我知道这是否有效!