美文网首页
React Native StryleSheet 实践总结

React Native StryleSheet 实践总结

作者: 麦曦 | 来源:发表于2019-03-13 09:59 被阅读0次
1) 引入样式
import { StyleSheet } from 'react-native' 
2) 创建样式
const styles = StyleSheet.create({
 container: {
     backgroundColor: "#eae7ff",
     flex: 1
 }
});
3) 调用样式的几种方式

单个样式引用(对象)

<View style={styles.container}></View>

多个样式引用(数组)

<View style={[styles.container,styles.addStyle]}></View>

条件样式

<View style={[styles.container,true && styles.addStyle]}></View>
<View style={true ? styles. container : {} }></View>
//单条建议用三元,如为false时返回null 有可能加载错误

直接使用样式(不推荐,不利于维护)

<View style={{fontSize:40, width:80,}}> </View>
<View style={[styles.container,{marginTop: 80}]} /> 
4) Flex布局与cssFlex的区别
参数名 与css的区别(无以下属性)
Flex number
flexDirection row:主轴水平,起点在左 column(默认值):主轴垂直,起点在上,默认值 row-reverse 主轴水平,起点在右 column-reverse 主轴垂直,起点在下 默认值:row
flexWrap wrap:换行,第一行在上方 noWrap(默认值):不换行 wrap-reverse 换行,第一行在下方
justifyContent flex-start(默认值):左对齐 flex-end:右对齐 center:居中 space-between:两端对齐,项目之间间隔相等 space-around:每个项目的间隔相等。项目间的与项目与边框的间隔大一倍
alignItems flex-start:交叉轴的起点对齐。 flex-end:交叉轴的终点对齐。 center:交叉轴的中点对齐。 stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度。 baseline: 项目的第一行文字的基线对齐。
alignSelf flex-start:交叉轴的起点对齐。 flex-end:交叉轴的终点对齐。 center:交叉轴的中点对齐。 stretch(默认值):如果项 S目未设置高度或设为auto,将占满整个容器的高度。 baseline: 项目的第一行文字的基线对齐。 属性允许单个项目有与其他项目不一样的对齐方式,可覆盖align-items属性。
flexFlow flex-direction flex-wrap FlexDirection和flexWrap的简写形式

相对于flexDirection : justifyContent 主轴 alignItems交叉轴

flexDirection 主轴(justifyContent) 交叉轴(alignItems)
row 水平 垂直
clumn 垂直 水平
5) reactNative styleSheet与CSS样式的区别

1)区别点

大多数和css参数一致,采用javascript里的驼峰命名写法,部分参数名称不一样。

2)参数区别

Css React-native 参数
backgroundSize resizeMode contain cover stretch
text-decoration textDecorationLine none:无线 underline:下划线 line-through:删除线

3)新增的属性

属性 Type 说明
marginHorizontal number 左右外边距
marginVertical number 上下外边距
paddingHorizontal number 左右内边距
paddingVertical number 上下内边距

4)文本对象的属性

numberOfLines 需要放在最外层的Text元素上,且虽然截取了文字但是还是会占用空间 文本行数限制,添加后超过限制行数文本会在末尾默认以...的形式省略。 用法: <Text numberOfLines={6}/>
ellipsizeMode 设置文本缩略格式,配合numberOfLines使用,values: tail:在末尾...省略(默认值) clip:在末尾切割,直接切割字符无省略符 head:在前面...省略 middle:在中间...省略

本文部分内容来自网络收集。

相关文章

网友评论

      本文标题:React Native StryleSheet 实践总结

      本文链接:https://www.haomeiwen.com/subject/ydzapqtx.html