![](/img/trans.png)
[英]How to render children within react functional components using react and typescript?
[英]Typescript ESLint Error - How can I type children when using react functional components?
我正在整理一個樣板樣本:
我幾乎已經解決了所有問題,但我似乎無法弄清楚我遇到的這個 ESLint 錯誤。 我有一個像這樣的 MobX 商店提供者
import { useLocalStore } from 'mobx-react';
import React from 'react';
import { StoreType } from '../Types/StoreType';
import { StoreContext } from './StoreContext';
export const StoreProvider = ({ children }) => {
const store = useLocalStore(() => ({
loginStore: { email: ['neil.peart@rush.yyz'] },
applicationStore: { firstName: 'neil', lastName: 'peart' }
})) as StoreType;
return <StoreContext.Provider value={store}>{children}</StoreContext.Provider>;
};
我收到錯誤:
6:30 警告缺少函數 @typescript-eslint/explicit-function-return-type 的返回類型
6:33 錯誤“兒童”在道具驗證反應/道具類型中丟失
如果你想把整個事情拉下來,你可以在這里: https : //github.com/Savij/functional-react-mobx-material
欣賞任何見解! -J
您的示例中StoreProvider
的返回類型是React.ReactElement
,可以這樣設置:
export const StoreProvider = ({ children }): React.ReactElement => {
return ...
}
源代碼中的children
類型也是React.ReactElement
,但必須包裝在接口中,因為它作為組件 props 的屬性傳入。
export const StoreProvider = ({ children }: StoreProviderProps): React.ReactElement => {
return ...
}
interface StoreProviderProps {
children: React.ReactElement;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.