【发布时间】:2019-05-24 11:09:48
【问题描述】:
在我的应用中随处可见一些图片。想象一下用户的默认头像,比如按钮图标等。
我阅读了 React 文档,但他们没有详细介绍如何更好地处理 require 经常使用的图像。
我的应用是这样的结构
...
./assets/images/like.png
./assets/images/default-avatar.png
./components/Newsfeed.js
./components/Home.js
...
我像这样在render() 函数的主体中使用require。但我注意到图片需要很长时间才能加载。
render() {
...
posts && posts.map(post => <Post likeUrl={require('../assets/images/like.png')}>)
...
}
我正在试验,所以我将require 移到顶部,然后在我的Newsfeed.js 和Home.js 中重构。加载这些组件时确实有明显的改进。
...
const LIKE = require('../assets/images/like.png')
export class Newsfeed extends Component {
render() {
...
posts && posts.map(post => <Post likeUrl={LIKE}>)
...
}
}
我想知道是否有办法构建项目,这样我就不必在多个地方require。
奖励积分:
-
requireing 会像我怀疑的那样性能更高吗?还是我只是在想象。 - 如果是这样,将这些图像导入一个集中位置、使其可导出、然后将它们导入另一个文件以供使用的好方法是什么?
提前致谢!
【问题讨论】:
-
一般来说,我创建一个组件,在其中导入图像,然后在我想要的位置导入该组件,因此您只需在组件中导入一次
标签: reactjs react-native ecmascript-6 commonjs