样式设置问题:
当我们使用自定义组件的时候,在父组件中给自定义
的组件设置样式会发现无效,设置如下:
本质上是对于引入子组件的理解有误:
对于引入的父组件来说,子组件只是一个import
的JSX,即子组件在这里会被编译成<View>XXX</View>
替换这里的HomeFunctions
,那么对于HomeFunctions
来说,在这里的意义只是一个占位符,所以设置的任何样式都不会被传递到子组件的<View>XXX</View>
这个最外层的View
中,所以对于自定义的组件这样设置样式是无效的。
注意,这里仅仅是针对样式,对于其他属性(prop)来说并不是一个占位符,而是有实际意义的,比如进行赋值传值等。这里应该是编译时进行了处理,并不把这里的样式属性进行处理。
解决方法:
可以在子组件中给最外层的设置样式,以达到预期的效果。
或者在这里使用一个View
去包裹自定义的组件,然后设置这个View
的样式。
网友评论