翻譯:React - TypeScript對props進行解構賦值
P粉071602406
P粉071602406 2023-07-27 16:35:13
0
2
490
<p>我有函數</p> <pre class="brush:php;toolbar:false;">export function getSubjectsForStudent(data: any) : any[]</pre> <p>"data argument" 是我從外部來源接收的,定義強型別並不可行。 "return" 是根據 "data" 推導出來的,所以它也是 any 類型。 <br /><br />一個"Main" 元件將"return" 傳給一個"child" 元件,像這樣:</p><p><br /></ p> <pre class="brush:php;toolbar:false;"><MainCategories subjects={getSubjectsForStudent(data)} /></pre> <p>而在 MainCategories 元件中,</p> <pre class="brush:php;toolbar:false;">export default function MainCategories(props: any) { const tmp = props.subjects; ...</pre> <p>翻譯:它可以工作,沒問題。 </p><p>但我想要:</p><p>export default function MainCategories( {subjects} ) {</p><p>有人可以幫忙嗎? </p><p><br /></p>
P粉071602406
P粉071602406

全部回覆(2)
P粉579008412

你需要加入一個 Props 的類型或接口,然後你就可以透過解構來取得 subjects。

interface Props {
  subjects: any
}

export default function MainCategories({ subjects }: Props) {
    const tmp = props.subjects;
    ...
P粉155710425

我經常使用這種模式來實現這個,但主要的關鍵是定義props。

import { FunctionComponent } from 'react';

interface Props {
  // In your case
  subjects: any
}

const MainCategories: FunctionComponent<Props> = ({subjects}) => (
  ...
);

export default MainCategories;
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板