我正在尝试在我的SPFX应用程序中正常工作,并且我确定我的课堂不正确
我已经在JS中尝试过我的代码,并使用npm install运行了它,并且工作正常,但是当我尝试使用spfx在TS中进行操作时,出现此错误:
import * as React from 'react';
import PropTypes from 'prop-types';
export const Checkbox = ({ type = 'checkbox', checked = false, onChange, id }) => {
return <input id={id} type={type} checked={checked} onChange={onChange} />;
};
Checkbox.propTypes = {
type: PropTypes.string,
name: PropTypes.string.isRequired,
checked: PropTypes.bool,
onChange: PropTypes.func.isRequired,
};
我用
来称呼它return (
<label style={{display: 'block'}} key={item.id}>
<Checkbox
style={{display: 'block'}}
checked={checked}
onChange={this.handleChange}
id={item.id}
statement={item.statement}
/>
{item.statement}
</label>
我的确切错误是:错误TS2604:JSX元素类型“复选框”没有任何构造或调用签名。
有什么想法聪明的人吗?
答案 0 :(得分:1)
由于您未使用默认导出,因此您需要指定要从模块中导入的组件:
import { Checkbox } from './Checkbox
或者您可以使用默认导出并使用适当的语法导入它
const Checkbox = /* ... */
export default Checkbox;
import Checkbox from './Checkbox