将动态变量与数组映射一起使用原生

时间:2020-06-09 20:01:54

标签: react-native

我正在尝试打印其名称基于所选值而计算出的数组。 例如

const ANotes = ["B", "C", "D"];
const keyNotes = MyNotes[selected] + "Notes"; //value is ANotes

尝试将其呈现为:

<View>
        {{keyNotes}.map((item, key)=>(
         <Text key={key} 
          //style={styles.TextStyle} 
          //onPress={ this.SampleFunction.bind(this, item) }
          > { item } , </Text>)
        )}
      </View>

当我尝试在“组件”的“视图”中渲染它时,会出现错误。我是React Native的新手,所以无法弄清楚这一点。我希望输出在应用程序中显示B,C,D。

它给出错误:TypeError:undefined不是一个函数。

1 个答案:

答案 0 :(得分:0)

如果没有将字符串值附加到某个对象或数组,则无法使用字符串值访问本地范围内的变量,请查看此SO以获取某些解决方案

似乎您正在使用功能组件,如果切换到类组件,则可以使用this[keyNotes]

进行访问。
<View>
     {this[keyNotes].map((item)=><Text key={item}> {item}Notes,  </Text>)} 
</View>

这是一个正常工作的sandbox(我使用的是React而不是Native的,所以我改成了dom元素)