-
Notifications
You must be signed in to change notification settings - Fork 24.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Loading a local image using require() doesn't work #16909
Comments
Hi @packouray, it absolute worked. Can you check on snack? |
Apparently it cannot work - require() is processed during transpilling or whatever you want to call a processing that happens during building the app, hence it requires a constant value.
|
Hi @talcoolcat, import React, { Component } from 'react';
import { Image } from 'react-native';
class StaticImage extends Component {
constructor(props) {
super(props);
this.state = {
images: [
require('./../assets/img-0.png'),
require('./../assets/img-1.png'),
require('./../assets/img-2.png'),
require('./../assets/img-3.png'),
require('./../assets/img-4.png'),
require('./../assets/img-5.png')
]
}
}
render() {
const { images } = this.state
return (
<View>
{
images.map((image, i) => {
return (
<Image source={image} {...this.props} />
)
})
}
</View>
)}
} |
@facebook-github-bot stack-overflow |
Hey @packouray, thanks for posting this! @lwinkyawmyat tells me this issue looks like a question that would be best asked on Stack Overflow. Stack Overflow is amazing for Q&A: it has a reputation system, voting, the ability to mark a question as answered. Because of the reputation system it is likely the community will see and answer your question there. This also helps us use the GitHub bug tracker for bugs only. |
Hi,
Is this a bug report?
yes.
Actual Behavior
I'm getting "require() must have a single string literal argument" when I'm trying to require a local image.
Here is what I do :
I'm retrieving the image path as a string from Firebase database and I'm setting a state with it :
profilePicture: user.val().picture_1
here is the path => "../../img/user/profile/blank_profile.png"
Then I'm trying to set my image source using the path that I just retieved :
<Thumbnail large source={require(this.state.profilePicture)}/>
But I'm getting the error "require() must have a single string literal argument".
Thank you in advance !
Expected Behavior
The image is displayed.
Steps to Reproduce
Require a local url from firebase stored in a state.
Environment
Environment:
OS: Windows 10
Node: 6.10.2
Yarn: Not Found
npm: 3.10.10
Watchman: Not Found
Xcode: N/A
Android Studio: Version 2.3.0.0 AI-162.3871768
Packages: (wanted => installed)
react: 16.0.0-beta.5 => 16.0.0-beta.5
react-native: ^0.49.5 => 0.49.5
The text was updated successfully, but these errors were encountered: