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即可获取
相关推荐
Moment12 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
爱敲代码的小鱼12 小时前
AJAX(异步交互的技术来实现从服务端中获取数据):
前端·javascript·ajax
铅笔侠_小龙虾14 小时前
Flutter 实战: 计算器
开发语言·javascript·flutter
大模型玩家七七14 小时前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
2501_9447114314 小时前
JS 对象遍历全解析
开发语言·前端·javascript
发现一只大呆瓜15 小时前
虚拟列表:支持“向上加载”的历史消息(Vue 3 & React 双版本)
前端·javascript·面试
阔皮大师15 小时前
INote轻量文本编辑器
java·javascript·python·c#
lbb 小魔仙15 小时前
【HarmonyOS实战】React Native 表单实战:自定义 useReactHookForm 高性能验证
javascript·react native·react.js
_codemonster15 小时前
Vue的三种使用方式对比
前端·javascript·vue.js
全栈前端老曹16 小时前
【MongoDB】Node.js 集成 —— Mongoose ORM、Schema 设计、Model 操作
前端·javascript·数据库·mongodb·node.js·nosql·全栈