here
从这里我意识到有什么地方不对,循环依赖正在被创建。
我决定放弃
madge
现在由于我的项目是相当大的调试,这是一个相当大的任务,所以我创建了一个包含单个文件夹的项目的小版本。
我创建了一个utils文件夹,其中有4个文件:-
-
公用事业/索引.js
-
实用程序/设备-助手.js
-
公用事业/初始化.js
-
索引.js
对于我正在使用的导入
babel-module-resolver
公用事业/初始化.js
import {deviceInfo} from "utils";
export const init = () => {
// initialising app and calling backend API with device info
};
实用程序/设备-助手.js
import DeviceInfo from "react-native-device-info";
const API_LEVEL = "v0";
export const deviceInfo = () => {
try {
return Object.assign({}, {
apiLevel: API_LEVEL,
deviceId: DeviceInfo.getUniqueID(),
device: DeviceInfo.getDeviceName(),
model: DeviceInfo.getModel(),
osVersion: DeviceInfo.getSystemVersion(),
product: DeviceInfo.getBrand(),
country: DeviceInfo.getDeviceCountry(),
appVersion: DeviceInfo.getVersion(),
manufacturer: DeviceInfo.getManufacturer(),
userAgent: DeviceInfo.getUserAgent(),
buildNumber: DeviceInfo.getBuildNumber(),
bundleId: DeviceInfo.getBundleId()
});
} catch (e) {
// TODO: Report to Bugsnag
return {};
}
};
export * from "./init";
export * from "./device-info-helper";
索引.js
export * from "./utils";
运行后
madge
我得到的命令如下:-
tests-MBP:madge-test harkirat$ madge --circular index.js
Processed 4 files (684ms)
â Found 1 circular dependency!
1) utils/index.js > utils/init.js
公用事业/初始化.js
import {deviceInfo} from "./device-helpers";
export const init = () => {
// initialising app and calling backend API with device info
};
我无法理解这种循环依赖的原因。有人能帮忙吗?
Here