Javascript 获取反应流错误:模块不是多态类型。如何扩展一个类?
我正在尝试扩展现有布局,以基本覆盖renderHeader方法,但flow不喜欢它: module./Layout[1]不是多态类型 我该如何解决这个问题 这是我试图扩展的一个类,它不是抽象的: Layout.js 这是我的课程,应该扩展: LayoutRegistration.js 试试这个:Javascript 获取反应流错误:模块不是多态类型。如何扩展一个类?,javascript,reactjs,flowtype,javascript-inheritance,Javascript,Reactjs,Flowtype,Javascript Inheritance,我正在尝试扩展现有布局,以基本覆盖renderHeader方法,但flow不喜欢它: module./Layout[1]不是多态类型 我该如何解决这个问题 这是我试图扩展的一个类,它不是抽象的: Layout.js 这是我的课程,应该扩展: LayoutRegistration.js 试试这个: //@flow import * as React from 'react'; import Header from '../header/Header'; import '../../css/sett
//@flow
import * as React from 'react';
import Header from '../header/Header';
import '../../css/settings/utilities.css';
//Change te type to interface. Since type is not assignable to interface
type LayoutProps<T> {
children: React.Node
};
class Layout<T> extends React.PureComponent<*, LayoutProps<T>, *> {
renderHeader() {
return <Header />;
}
render() {
return (
<React.Fragment>
<h1 className="u-hd">My Wee Loyalty Prime</h1>
{this.renderHeader()}
<main className="main">{this.props.children}</main>
</React.Fragment>
);
}
}
试试这个:
//@flow
import * as React from 'react';
import Header from '../header/Header';
import '../../css/settings/utilities.css';
//Change te type to interface. Since type is not assignable to interface
type LayoutProps<T> {
children: React.Node
};
class Layout<T> extends React.PureComponent<*, LayoutProps<T>, *> {
renderHeader() {
return <Header />;
}
render() {
return (
<React.Fragment>
<h1 className="u-hd">My Wee Loyalty Prime</h1>
{this.renderHeader()}
<main className="main">{this.props.children}</main>
</React.Fragment>
);
}
}
问题是
import * as Layout from './Layout';
结果布局导入是模块对象,而它应该是类
由于布局组件是默认导出,因此应为:
import Layout from './Layout';
问题是
import * as Layout from './Layout';
结果布局导入是模块对象,而它应该是类
由于布局组件是默认导出,因此应为:
import Layout from './Layout';
与接口交换类型无法修复错误。还有什么需要更改的吗?从“/Layout”导入布局;已修复issueexchanging类型与接口不修复错误。还有什么需要更改的吗?从“/Layout”导入布局;修正了这个问题