こんにちは、私は反応/アプリを作りました。 )をreduxストアのイメージファイル名で置き換えます。画像をレンダリングするには、私はそれらにパスを提供する必要があります。このコードは今までのところ<img src={require(`../../assets/${avatar}`)} />
で動作した唯一のものですが、render関数にrequireステートメントを入れるのは面倒です。また、私はそれをテストする方法を理解できません(how do i get a jest/enzyme test to pass this require statement containing a path and a prop)。私のアプリは現在ルーティングがありませんが、もし私がこの問題を解決するために反応ルータを使うことができたら、私は結局いくつか追加します。関連するコードは次のようになります。モジュールファイル名がreduxの店舗にあるときに画像パスを指定する方法
import React from 'react'
import PropTypes from 'prop-types'
const UserProfile = ({name='', avatar=''}) => {
return (
<section className='bg-bright padding-m'>
<img alt='avatar' src={require(`../../assets/${avatar}`)} />
{name}
</section>
)
}
UserProfile.propTypes = {
name: PropTypes.string,
avatar: PropTypes.string
}
export default UserProfile
それが問題のルックスにラインを
{
"name": "a name",
"avatar": "name.jpg"
}
のようなものを使用していますReduxのストアデータが
<img alt="avatar" src="/static/media/admin.34e378b0.jpg">
Thxをとしてレンダリング!
ここで問題は何ですか? – WilomGfx
私の現在の解決策はハッキリしているようですが、require文がモジュールであることを考慮したテストでも証明されているように、テストを成功させる方法を見つけられません。 – j1mmy