Max*_*lll 27 javascript xcode reactjs react-native
我刚刚开始使用React-native并且对React创建Web应用程序有相当不错的把握......我遇到了一个令人困惑的问题,这个问题在处理web响应时从未发生过.
基本上我正在渲染一个组件,其图像是通过映射其父组件中的对象数组来动态生成的.
export default class ImageComponent extends React.Component {
render() {
return (
<Image source={this.props.source}/>
);
}
};
Run Code Online (Sandbox Code Playgroud)
它的父组件:
export default class MainComponent extends React.Component {
constructor(props) {
super(props);
this.state = {
images:[
{ src: './src/images/1.png'},
{ src: '/src/images/2.png'},
{ src: './src/images/3.png'}
]
}
}
render() {
let images = this.state.images.map((image) => {
return(<ImageComponent source={image.src} />);
})
return (
<View>
{images}
</View>
);
}
};
Run Code Online (Sandbox Code Playgroud)
在设备模拟器中,我收到以下错误:
"警告:propType失败:提供给'Image'的prop'ource'无效,检查'BasicComponent'的渲染方法"
有谁知道这里会发生什么?
zvo*_*ona 51
您应该要么需要本地资产,要么使用带uri
密钥的对象.
所以要么MainComponent
:
this.state = {
images:[
require('./src/images/1.png'),
require('./src/images/2.png'),
require('./src/images/3.png')
]
}
Run Code Online (Sandbox Code Playgroud)
或者在BasicComponent
:
return (
<Image
source={{uri: this.props.source}}
/>
);
Run Code Online (Sandbox Code Playgroud)
你应该使用 uri 来设置源图像
return (
<Image
source={{uri: 'https://reactnative.dev/docs/assets/p_cat2.png'}}
/>
);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
28411 次 |
最近记录: |