【发布时间】:2018-12-09 09:53:40
【问题描述】:
我有一个 SFC React 组件,其 Flow 运行如下:
// @flow
import React from 'react';
type Props = {
placeholderText?: string,
};
const defaultProps = {
placeholderText: '',
};
const Textarea = (props: Props) => (
<textarea placeholder={`${props.placeholderText}`} />
);
Textarea.defaultProps = defaultProps;
export default Textarea;
我从 Flow 收到以下错误:
Cannot coerce 'props.placeholderText' to string because undefined[1] should not be coerced (References: [1])
有人能解释一下这是怎么回事以及解决方法是什么吗?
据我所知,我已经明确告诉 Flow placeholderText 是一个字符串,此外,由于它不是必需的道具,我已将默认道具设置为空字符串,因此它永远不会为空或未定义。
【问题讨论】:
-
这可能与设置 SFC defaultProps 的问题相同,也许可以试试看:stackoverflow.com/questions/40209352/…
-
@KF 感谢您的帮助,但我在该线程上没有取得任何进展,部分原因是它与 Typescript 有关,但我尝试的一些事情也没有帮助。
标签: javascript reactjs flowtype