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即可获取
相关推荐
Whisper_Sy2 小时前
Flutter for OpenHarmony移动数据使用监管助手App实战 - 网络状态实现
android·java·开发语言·javascript·网络·flutter·php
新缸中之脑3 小时前
Weave.js:开源实时白板库
开发语言·javascript·开源
Amumu121383 小时前
Vue组件化编程
前端·javascript·vue.js
m0_637256584 小时前
vue-baidu-map添加了类型组件导致非常卡顿的问题
前端·javascript·vue.js
雨季6664 小时前
基于设备特征的响应式 UI 构建:Flutter for OpenHarmony 中的智能布局实践
javascript·flutter·ui
挂机且五杀4 小时前
为什么在React地图组件里,memo 不是优化,而是生存?
前端·react.js·前端框架
刘一说5 小时前
Vue开发中的“v-model陷阱”:为什么它不能用于非表单元素?
前端·javascript·vue.js
利刃大大5 小时前
【Vue】组件生命周期 && 组件生命周期钩子
前端·javascript·vue.js·前端框架
Easonmax5 小时前
基础入门 React Native 鸿蒙跨平台开发:实现面包屑导航
react native·react.js·harmonyos
Easonmax6 小时前
基础入门 React Native 鸿蒙跨平台开发:冒泡排序动画可视化
react native·react.js·harmonyos