“React Native中的<img/>组件不能包含子项,可能的修复?

时间:2018-02-05 09:24:31

标签: javascript android ios react-native

第1天public static Image resizeImage(Image imgToResize, Size size) { return (Image)(new Bitmap(imgToResize, size)); } yourImage = resizeImage(yourImage, new Size(50,50)); 。尝试在React-Native应用中加载多个图片。但是,应用程序崩溃时出现错误:

  

错误:组件不能包含子项。如果你想   在图像上渲染内容,考虑使用   React-Native组件或绝对定位。

我尝试了这些现有问题的解决方案,但是他们未能解决我的问题:

还尝试将<ImageBackground>替换为<ImageBackground>,但这也无法解决问题。

以下是<Image>的代码:

App.js

可能导致此问题以及解决方法的原因是什么?

3 个答案:

答案 0 :(得分:2)

不再支持具有嵌套内容的

<Image>。使用<ImageBackground>,而不是

<View style={styles}>
  <ImageBackground style={styles} source={source} resizeMode={resizeMode} >
    {children}
  </ImageBackground>
  {...}
</View>

此外,您还需要添加父组件(View)来包装所有组件。

答案 1 :(得分:-1)

它不起作用,因为您必须使用父View包装所有组件。 图片不能是父视图。

类似的东西:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id='d1'></div>
<br> click on the box

答案 2 :(得分:-1)

您必须将布局包装在$query = 'SELECT * FROM targets'; $flag = 0; if(isset($filter_brand) ) { $query = "SELECT * FROM targets WHERE brand='$filter_brand'"; $flag = 1; } if(isset($filter_year)) { if($flag==1) $query .= " &&"; $query .= " startyear='$filter_year'"; $flag = 1; } if(isset($filter_month)) { if($flag==1) $query .= " &&"; $query = " startmonth='$filter_month'"; $flag = 1; } if(isset($filter_status)){ if($flag==1) $query .= " &&"; $query = " status='$filter_status'"; $flag = 1; } if($flag == 1){ $query .= " ORDER BY createdon DESC"; } else { $query = "SELECT * FROM targets ORDER BY createdon DESC"; } <div>标记内。它在android中被称为<View>,您可以在其中添加多个子项。

您必须在此处返回一个视图ViewGroup,以便添加多个子视图,您必须使用div或view标记。

return(view)