@ali-i18n-fe/dada-component
Version:
30 lines (23 loc) • 670 B
text/typescript
import lscWindowConfig from "../../utils/lscConfig";
import RequireJS from "../../utils/RequireJS";
export function getPublicPrefix() {
const { publicPath } = lscWindowConfig;
let prefix = window.location.origin;
if (/^http/.test(publicPath)) {
prefix = publicPath;
} else {
prefix += publicPath;
}
return prefix;
}
let promise;
export async function getVisionConfig(componentName: string) {
let prefix = getPublicPrefix();
const visionPath = new URL(prefix + "vision.config.json");
if (!promise) {
promise = RequireJS.load(visionPath.href).then(modules => {
return modules[componentName];
});
}
return await promise;
}