如何在React Native中使用switch执行条件渲染?

您好我正在尝试在我的项目中执行switch语句。我有一个对象图像如下


export const images = [

  {

    image: BASE.URL + 'Images/Plumber.png',


  },

  {

    image: BASE.URL + 'Images/electrician.png',



  },

 {

    image: BASE.URL + 'Images/ac.png',


  }

]

我正在从服务器获取工作人员列表并将其呈现在Card.so中,因此服务器响应仅包含工作人员的名称。我正在尝试将图像与它们一起提供,因此我编写了switch语句,但图像未与文字一起。以下是我的代码。


    import { images } from './data';

    renderImage() {

        const { workType } = this.state;

        switch (workType) {

          case 'Plumber':

            return (

              <Image style={{ height: 100, width: 100 }} source={{ uri: images[0].image }} />

            );

          case 'Electrician':

            return (

              <Image style={{ height: 100, width: 100 }} source={{ uri: images[1].image }} />

            );

     case 'AC'

            return (

              <Image style={{ height: 100, width: 100 }} source={{ uri: images[2].image }} />

            );

        }

      }

   render(){

    const { workers,workType } = this.state;

    return(

    {workers.map((a, index) => (

                    <TouchableOpacity onPress={() => this.popUpDialog(a.id, a.work_type)}>

                      <Card>

                        {this.renderImage()}

                        <Text>{a.work_type}</Text>

                      </Card>

                    </TouchableOpacity>

              ))}

    )

    }

我做错了什么,请帮助我找到解决方案。谢谢!


Helenr
浏览 274回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript