- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我遇到了定义 FormWithRedirect
的这部分代码作为 FC(FunctionComponent)
:
declare const FormWithRedirect: FC<FormWithRedirectProps>;
export declare type FormWithRedirectProps = FormWithRedirectOwnProps & Omit<FormProps, 'onSubmit' | 'active'>;
export interface FormWithRedirectOwnProps {
defaultValue?: any;
record?: Record;
redirect?: RedirectionSideEffect;
render: (props: Omit<FormViewProps, 'render' | 'setRedirect'>) => React.ReactElement<any, any>;
...
}
以下是它的使用方法:
const SimpleForm: FC<SimpleFormProps> = (props) => (
<FormWithRedirect {...props} render={(formProps) => <SimpleFormView {...formProps} />} />
);
考虑
FC
的定义如下:
type FC<P = {}> = FunctionComponent<P>;
interface FunctionComponent<P = {}> {
(props: PropsWithChildren<P>, context?: any): ReactElement | null;
propTypes?: WeakValidationMap<P>;
contextTypes?: ValidationMap<any>;
defaultProps?: Partial<P>;
displayName?: string;
}
我想应该分配给
FormWithRedirect
在使用它之前(类似于
FormWithRedirect = (props) => {....}
),但是在上面的代码中没有分配,也没有分配函数。它是如何工作的?
最佳答案
https://stackoverflow.com/a/59552002/2312051
tl;博士
'declare' is used to tell the compiler 'this thing (usually a variable) exists already, and therefore can be referenced by other code, also there is no need to compile this statement into any JavaScript"
Declaration.
Use declare var to declare variables. If the variable is read-only, you can use declare const. You can also use declare let if the variable is block-scoped.
/** The number of widgets present */
declare var foo: number;
FormWithRedirect
是一个描述如何使用/返回 const 的声明。即它将是具有
FormWithRedirectProps
的功能组件
FormWithRedirect
的实例显式创建定义和 2. 引用
FormWithRedirect
稍后进行类型推断(在实现 const 之前)
const FormWithRedirect: FC<FormWithRedirectProps> = () => {
...whatever
}
某个地方,(声明 FormWithRedirect 将并且应该存在于某处)
declare const FormWithRedirect: FC<RedirectWithProps>
期待在其他地方实现
const FormWithRedirect = () => {}
关于reactjs - 在不分配功能的情况下 react Typescript FunctionalComponent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64665724/
我遇到了定义 FormWithRedirect 的这部分代码作为 FC(FunctionComponent) : declare const FormWithRedirect: FC; export
下面是示例: function RoundButton(): React.FC { return "hello world"; } 给出一个错误: Type 'Element' is not as
是否有规则我可以禁用 React.StatelessComponent 或 React.FunctionalComponent 以仅使用 React.FC 例如: export const Com
是否有规则我可以禁用 React.StatelessComponent 或 React.FunctionalComponent 以仅使用 React.FC 例如: export const Com
我是一名优秀的程序员,十分优秀!