我们使用的是微前端框架piral。对于我们的pilets,我们想要提供一个自定义的api。按照教程的要求,我们编写了如下代码
export interface MyApi {
example(): void;
}
export function createMyApi(): Extend<MyApi> {
return context => {
return (api, target) => {
return {
example() {
alert(`Hello from ${target.name}!`);
}
};
};
};
}虽然这似乎在功能上可以工作,但我们无法让它与typescript一起工作。我们做错了什么?我们如何在我们的pilets中提供类型呢?
发布于 2019-12-26 04:24:32
我认为您可能错过了正确的声明合并。
import { PiletApi } 'piral-core';
declare module 'piral-core/lib/types/custom' {
interface PiletCustomApi extends MyApi {}
}所以总而言之:
import { PiletApi } 'piral-core';
export interface MyApi {
example(): void;
}
declare module 'piral-core/lib/types/custom' {
interface PiletCustomApi extends MyApi {}
}
export function createMyApi(): Extend<MyApi> {
return context => {
return (api, target) => {
return {
example() {
alert(`Hello from ${target.name}!`);
}
};
};
};
}希望这能有所帮助!
https://stackoverflow.com/questions/59476560
复制相似问题