typescript 一种带有React式文字动态离子图标

s4n0splo  于 2022-11-30  发布在  TypeScript
关注(0)|答案(1)|浏览(122)

我想让我的IonIcons是动态的,这样它们就可以重用了。但是我需要在{}中设置它。我不知道如何使用.map()元素来实现这一点。

import React from "react";
import { IonIcon, IonLabel } from "@ionic/react";
import styles from "./quickOptions.module.css";
import { alarmOutline, personOutline, cartOutline } from "ionicons/icons";

export default function quichOptions() {
  const quickOptions = [
    { title: "Jouw consulent", icon: { personOutline } },
    { title: "Jouw afspraken", icon: { alarmOutline } },
    { title: "Jouw bestellingen", icon: { cartOutline } },
  ];

  return (
    <div className={styles.mainContainer}>
      {quickOptions?.map((element: any) => {
        return (
          <div key={element.title} className={styles.btnContainer}>
            <IonLabel>{element.title}</IonLabel>
            <IonIcon icon={element.icon} size="large" /> //here
          </div>
        );
      })}
    </div>
  );
}

元素。图标没有给出{personOutline}的输出,例如,有人知道如何修复这个问题吗?

ldfqzlk8

ldfqzlk81#

您可以检查console.log(元素类型.图标)
const快速选项= [ {标题:“Jouw consulent”,图标:'个人大纲' },];

<IonIcon icon={element.icon} size="large" />

如果这里的图标类型是{string},这就是它不起作用的原因
在快速选项中尝试,图标:人物轮廓或图标:'个人大纲'

相关问题