反应原生,动态背景图像不起作用

时间:2021-05-12 16:47:18

标签: javascript react-native react-navigation jsx

我正在制作一个应用程序,在其中添加了黑暗模式,我的应用程序有一个“图像背景”,它应该根据手机的主题而改变。

到目前为止,我一直在尝试各种对我不起作用的方法。我是 React Native 的新手,我希望您能帮我找到解决方案。

这是我目前拥有的:

function HomeScreen(props){ 
      const scheme=useColorScheme();
      let imagen = "img/background.jpg";
      if(scheme === 'dark'){
        imagen = "img/blackfullblack.jpg";
    
      return (
        <ImageBackground fadeDuration={0} resizeMode = "stretch" style ={styles.container} 
          source = { require ("./" + imagen)} 
        > }
       ...etc...

首先,谢谢:)

1 个答案:

答案 0 :(得分:0)

metro 不支持动态导入,因此您需要更改代码以使用静态导入,如下所示:

let imagen = require("./img/background.jpg");
if (scheme === 'dark'){
  imagen = require("./img/blackfullblack.jpg");
}

return <ImageBackground fadeDuration={0} resizeMode="stretch" style={styles.container} source={imagen} />