我正在尝试在 Typescript 的类中导出一个函数。我能够导出该类,并将其用作另一个类的导入。但是,当我尝试使用该功能时,它给了我如下错误
类型“typeof Landing”上不存在属性“formatBytes”。
我试图formatBytes在Landing类中导出函数并将其用作类Landing.formatBytes内部Modules。
导出类
import * as React from 'react';
export default class Landing extends React.Component<{}, SomeState> {
public formatBytes(bytes: number, decimals: number): string {
return 'something';
}
public componentDidMount(): void {
// code
}
public render(): JSX.Element {
const { items } = this.state;
return (
<div>
</div>
);
}
}
Run Code Online (Sandbox Code Playgroud)
进口类
import * as React from 'react';
import Landing from './Landing'
export default class Modules extends React.Component<
{},
IDetailsListModulesState
> {
constructor(props: {}) {
super(props);
const _columns: IColumn[] = [
{
onRender: (item: IDetailsListModuleItem) => {
return (
<span>
{Landing.formatBytes(item.sizeDifference, 3)}
</span>
);
}
},
];
this.state = {
};
}
public componentDidMount(): void {
}
public render(): JSX.Element {
}
}
Run Code Online (Sandbox Code Playgroud)
小智 5
必须实例化 Landing 类才能使用该formatBytes方法。通过执行以下操作实例化 Landing 的新实例:
const myLanding = new Landing();
myLanding.formatBytes(item.sizeDifference, 3);
Run Code Online (Sandbox Code Playgroud)
或通过写入使 formatBytes 静态 public static formatBytes...
| 归档时间: |
|
| 查看次数: |
5410 次 |
| 最近记录: |