Получить изображение в родительской папке из кода реагирования - PullRequest
0 голосов
/ 22 марта 2019

Я хочу сделать фоновое изображение div. Я использую изображение в родительской папке моего файла, но когда я хочу получить к нему доступ с помощью функции, оно не работает:

test() {
  return '../test.png'
}

render() {
  return (
    <div
      style={{ backgroundImage: 'url(' + require( this.test() ) + ')' }}
    >
    </div>
  )
}

Обратите внимание, что это работает, когда я определяю фоновое изображение в файле css (который находится в той же позиции) или когда я делаю это:

render() {
  return (
    <div
      style={{ backgroundImage: 'url(' + require( '../test.png' ) + ')'}}
    >   
    </div>
   )
 }

Это работает также, когда я помещаю изображение в ту же папку, что и код, и когда я делаю это:

test() {
  return './test.png'
}

render() {
  return (
    <div
      style={{ backgroundImage: 'url(' + require( this.test() ) + ')' }}
    >
    </div>
   )
 }

Если у вас есть идеи, поделитесь ими! Спасибо.

1 Ответ

0 голосов
/ 22 марта 2019

Так что, очевидно, это история времени: у jsx нет времени, чтобы получить изображение из функции.Чтобы решить мою проблему, я просто возвратил объект all css:

test() {
  let test = 'test'
  return { backgroundImage: 'url(' + require( '../' + test + '.png' ) + ')' }
}

render() {
  return (
    <div
      style={ this.test() }
    >
    </div>
   )
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...