Я не могу понять, как установить значения свойств по умолчанию для моих компонентов с помощью Typescript.
Это исходный код:
class PageState
{
}
export class PageProps
{
foo: string = "bar";
}
export class PageComponent extends React.Component<PageProps, PageState>
{
public render(): JSX.Element
{
return (
<span>Hello, world</span>
);
}
}
И когда я пытаюсь использовать компонент следующим образом:
ReactDOM.render(<PageComponent />, document.getElementById("page"));
Я получаю сообщение об ошибке, когда свойство foo
отсутствует. Я хочу использовать значение по умолчанию. Я также пытался использовать static defaultProps = ...
внутри компонента, но он не имел никакого эффекта, как я подозревал.
src/typescript/main.tsx(8,17): error TS2324: Property 'foo' is missing in type 'IntrinsicAttributes & IntrinsicClassAttributes<PageComponent> & PageProps & { children?: ReactEle...'.
Как я могу использовать значения свойств по умолчанию? Многие компоненты JS, которые использует моя компания, полагаются на них и не используют их, не являются выбором.