在 react native 0.60.3 和 Xcode 11 中加载本地图像

Posted

技术标签:

【中文标题】在 react native 0.60.3 和 Xcode 11 中加载本地图像【英文标题】:Loading local image in react native 0.60.3 and Xcode 11 【发布时间】:2020-05-07 11:15:03 【问题描述】:

已编辑:仅在发布时不起作用

我使用 react 原生版本 0.60.3。一年前用本地图像制作应用程序,效果很好。我将 Xcode 更新到版本 11,旧代码和图像也可以正常工作。我尝试为暗模式添加新图像,但图像不显示,没有错误,只有空白。 在代码中使用来自 js 文件的图像,例如: "url":require("../images/page1.png")

添加图像以复制捆绑资源。

我尝试使用命令: npx react-native bundle --entry-file='index.ios.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios' --assets-dest='./ios

并将资产和 main.jsbundle 复制到 Xcode 并获得相同的结果,在我在 XCode 中没有资产文件夹之前,图像已在复制包资源中。 旧图像有效(一年前添加),新图像无效。我错过了什么?我没有错误,也不知道如何解决这个问题。

我的代码:

   <CustomImage 
        width=getImgWidth height=getImgHeight 
        lightpath=it.url 
        darkpath=it.urldark
        darkmode=theme.darkmode />

CustomImage.js

const CustomImage = (props) => 
  return (
   <View style= width: props.width, height: props.height >
  props.darkmode ? (
    <Image
      resizeMode="contain"
      style= width: props.width, height: props.height 
      source=props.darkpath
    />
     ) : (
    <Image
      resizeMode="contain"
      style= width: props.width, height: props.height 
      source=props.lightpath
    />
  )
  </View>
 );
 ;

【问题讨论】:

你能把代码的例子贴出来 如果是图像元素,请执行:&lt;Image source=require("../images/page1.png") /&gt; 我编辑问题并添加我的代码。 这项工作 ,不工作从 "url":require("../imagesdark/page1.png") 使用时,浅色图像效果很好。 以下答案有效吗? 【参考方案1】:

props.darkpath = require("../images/page1.png") 你可以试试:

<Image
      resizeMode="contain"
      style= width: props.width, height: props.height 
      source=`$props.darkpath`
    />

【讨论】:

我在暗路径中需要 "url":require("../images/page1.png") 你的意思是props.darkpath = require("../images/page1.png") 吗? 查看此链接:***.com/a/35366243/11380693

以上是关于在 react native 0.60.3 和 Xcode 11 中加载本地图像的主要内容,如果未能解决你的问题,请参考以下文章

React Native panResponderMove 获取触摸的X位置

react-native 使用绝对路径?而不是从'../../something/X'导入X?

未捕获的错误:x 必须是 react-native 中的数字或数组

React Native 和 RNFirebase iOS 版本构建失败

Native项目迁入React-Native过程中遇到的坑(0.4x版本)

添加 React-Native-Camera 和 React-Native-Push-Notification 后无法构建 React Native