React-Native基础语法记录

1、基于flex布局,默认是纵向排列

javascript 复制代码
flex-direction: column;

2、width,height等设置不需要单位(px,vw,vh...),可以采用百分比

3、样式不继承,例如:子元素不会父元素的fontSize

4、View标签不能单独存放文本

5、Imgae标签引用的外部资源图片,必须要设置width,height属性

6、transform写法,以数组的形式

javascript 复制代码
// 向下移动100,放大 2 倍
style={{transform: [{translateY: 100},{scale: 2}]}}

7、引用react-native的Dimensions方法可以获取设备宽高

javascript 复制代码
import {Dimensions} from 'react-native'
// math.round()是 Javascript中的一个内置函数,它的作用是对一个数字进行四舍五入取整
const screenWidth = Math.round(Dimensions.get('width').width)
const screenHeight = Math.round(Dimensions.get('height').height)

8、mobx 全局数据管理库

9、mobx-react: 方便在react中使用mobx

javascript 复制代码
// mobx.js
import {observable, action} from 'mobx';
class RootStore {
    // es7装饰器语法 Object.defineProerty
    @observable
    name: '';

    // 修改全局变量的方法
    @action
    changeName(name){
        this.name = name
    }
}

export default new RootStore();


// 在根组件中引入
import {Provider} from 'mobx-react';
import RootStore from './mobx'
<Provider RootStore={RootStore}>
    // 业务组件
</Provider>

// 业务组件中,通过props即可引用
import {inject, observer} from 'mobx-react'
@inject('RootStore') // 引入
@observer // 监听数据变化更新dom

//然后通过this.props.RootStore即可获取
相关推荐
kite01211 小时前
浏览器工作原理06 [#]渲染流程(下):HTML、CSS和JavaScript是如何变成页面的
javascript·css·html
крон1 小时前
【Auto.js例程】华为备忘录导出到其他手机
开发语言·javascript·智能手机
coding随想3 小时前
JavaScript ES6 解构:优雅提取数据的艺术
前端·javascript·es6
年老体衰按不动键盘4 小时前
快速部署和启动Vue3项目
java·javascript·vue
灵感__idea4 小时前
JavaScript高级程序设计(第5版):无处不在的集合
前端·javascript·程序员
星辰引路-Lefan4 小时前
深入理解React Hooks的原理与实践
前端·javascript·react.js
江城开朗的豌豆5 小时前
JavaScript篇:函数间的悄悄话:callee和caller的那些事儿
javascript·面试
江城开朗的豌豆5 小时前
JavaScript篇:回调地狱退散!6年老前端教你写出优雅异步代码
前端·javascript·面试
飞鸟malred5 小时前
vite+tailwind封装组件库
前端·react.js·npm
TE-茶叶蛋5 小时前
Vue Fragment vs React Fragment
javascript·vue.js·react.js