Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Typescript中导出类内的函数_Typescript_Export - Fatal编程技术网

在Typescript中导出类内的函数

在Typescript中导出类内的函数,typescript,export,Typescript,Export,我试图在Typescript中导出类内部的函数。我能够导出该类,并将其用作另一个类内部的导入。然而,当我尝试使用该函数时,它给出了如下错误 类型“typeof Landing”上不存在属性“formatBytes” 我正在尝试导出Landing类中的函数formatBytes,并将其用作Landing.formatBytes模块类中的Landing.formatBytes 导出类 import * as React from 'react'; export default class Land

我试图在Typescript中导出类内部的函数。我能够导出该类,并将其用作另一个类内部的导入。然而,当我尝试使用该函数时,它给出了如下错误

类型“typeof Landing”上不存在属性“formatBytes”

我正在尝试导出
Landing
类中的函数
formatBytes
,并将其用作
Landing.formatBytes
模块
类中的
Landing.formatBytes

导出类

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>
);
}
}
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 {

}
}
import*as React from'React';
导出默认类登录扩展React.Component{
公共格式字节(字节:数字,小数:数字):字符串{
返回“某物”;
}
公共组件didmount():void{
//代码
}
public render():JSX.Element{
const{items}=this.state;
返回(
);
}
}
导入类

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>
);
}
}
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 {

}
}
import*as React from'React';
从“./Landing”导入着陆
导出默认类模块扩展React.Component<
{},
IdetailsStModulesState
> {
构造函数(props:{}){
超级(道具);
常量列:IColumn[]=[
{
onRender:(项目:IDetailsListModuleItem)=>{
返回(
{Landing.formatBytes(item.sizeDifference,3)}
);
}
},
];
此.state={
};
}
公共组件didmount():void{
}
public render():JSX.Element{
}
}

必须实例化Landing类才能使用
formatBytes
方法。通过执行以下操作实例化新的着陆实例:

const myLanding=newlanding();
myLanding.formatBytes(item.sizeDifference,3);

或者通过写入
publicstaticformatbytes…

使formatBytes成为静态的,必须实例化Landing类才能使用
formatBytes
方法。通过执行以下操作实例化新的着陆实例:

const myLanding=newlanding();
myLanding.formatBytes(item.sizeDifference,3);
或者通过写入
publicstaticformatbytes…