0

我想随机返回文件夹中的图像,但出现错误“无效调用”

我的功能:

  returnGif = () => {
    min = Math.ceil(1);
    max = Math.floor(53);
    const gifNumber = Math.floor(Math.random() * (max - min +1)) + min;
    var gifFont = require('../config/Images/Gifs/' + gifNumber + '_2.png');
    if (gifFont) {
        if (Math.random()>0.5) gifFont = require('../config/Images/Gifs/' + gifNumber + '_2.png');
        else gifFont = require('../config/Images/Gifs/' + gifNumber + '.png');
    }
    else gifFont = require('../config/Images/Gifs/' + gifNumber + '.png');
    return gifFont;
  }
4

1 回答 1

1

在 react native 中,目前不支持 require 中的动态路径。

您需要导入所有图像,然后用例进行随机化

例如

 function getavatarImage(avatar) {
  switch (avatar) {
   case "spiderman":
    return require('./spiderman.png');
   case "batman":
    return require('./batman.png');
   case "hulk":
    return require('./hulk.png');
   default:
    return require('./no-image.png');
 }
}
于 2020-12-28T13:29:55.497 回答