小编Chr*_* H.的帖子

在 react-native-modal 内导航

我有一个带有底部标签导航的应用程序(以防它很重要),有时用户可以打开一个模式(react-native-modal)。模态中有按钮,我想在模态内实现导航,以便当用户按下其中一个按钮时,它们会被导航到模态内的另一个屏幕(并且可以向后导航)。任何帮助表示赞赏,提前致谢!我想要的例子:

模态示例

react-native react-navigation react-native-modal

7
推荐指数
1
解决办法
4656
查看次数

尝试将 require 与字符串连接一起使用时出现“TransformError:无效调用”

我有这样格式的数据:

const data = [
  {
    id: '0',
    title: 'Some title 1'
  },
  {
    id: '1',
    title: 'Some title 2'
  }
  ...
]
Run Code Online (Sandbox Code Playgroud)

我有一个包含图像的文件夹,其中每个图像都被称为“0.png”、“1.png”等,其数量与数据数组长度相同。我想做的是映射数据数组,显示标题和图像,其名称与元素的 id 相同。例如,

<Image source={require('./images/0.png')} />
Run Code Online (Sandbox Code Playgroud)

于是我写了这段代码:

data.map(item => (
  <View>
    <Image source={require(`./images/${item.id}.png`)} />
    <Text>{item.title}</Text>
  </View>
))
Run Code Online (Sandbox Code Playgroud)

这给了我这个错误: Error: TransformError: Invalid call at line 36: require("./images/" + item.id + ".png")

我也试过这样:

<Image source={require('./images/' + item.id + '.png')} />
Run Code Online (Sandbox Code Playgroud)

当我 console.log 使用此串联创建的图像的路径时,它看起来没问题。

顺便说一句,这工作得很好:

<Image source={require('./images/' + 10 + '.png')} />
Run Code Online (Sandbox Code Playgroud)

它显示名为“10.png”的图像

我错过了什么吗?请帮忙!

javascript react-native

4
推荐指数
1
解决办法
5767
查看次数

通过字母将对象数组转换为字典

我有一个看起来像这样的对象数组:

let stuff = [
  {
    "id": "48202847",
    "name": "Doe"
  },
  {
    "id": "17508",
    "name": "Marie"
  },
  {
    "id": "175796",
    "name": "Robert"
  },
  {
    "id": "175796",
    "name": "Ronald"
  },
]
Run Code Online (Sandbox Code Playgroud)

我想要得到的是一本看起来像这样的字典:

{
  "D": [{"id": "48202847", "name": "Doe"}],
  "M": [{"id": "17508", "name": "Marie"}],
  "R": [{"id": "175796", "name": "Robert"}, {"id": "175796", "name": "Ronald"}]
}
Run Code Online (Sandbox Code Playgroud)

请注意,如何将所有以“ R”开头的人列出在一个键下。

这是我的功能,用于创建以该人的姓名为键的字典:

const byId = (array) =>
  array.reduce((obj, item) => {
    obj[item.name] = item
    return obj
  }, {})
Run Code Online (Sandbox Code Playgroud)

但这显然不能满足我的要求。我确实对如何实现这一目标有一些想法,但是它们是非常古老的,我很想知道如何正确地做到这一点。任何帮助表示赞赏!

javascript

1
推荐指数
1
解决办法
53
查看次数