Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
T treasure
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 12
    • Issues 12
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • External wiki
    • External wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • FE
  • treasure
  • Issues
  • #57

Closed
Open
Created Dec 30, 2021 by 曹瑞秋@rachelDeveloper

分享:uni app与react native 差异化

Navigation

  1. 页面栈
    • Uni 可能会有重复的页面栈导致goBack()嵌套
    • RN的navigate方法则会将重复页面栈推出
  2. 向上个页面传参
    • Uni 只能通过goBack()并开启一个全局的事件通知/监听$emit/$on来捕获数据(经常有重复触发及捕获不到的情况)
    • RN则直接通过navigate方法实现像后传递参数(会将已存在的页面栈推出并返回到目标页面,看上去和goBack()的效果是一致的但支持传递参数,解决了页面栈出现重复嵌套的问题)
    • 同时RN在不需要向后传参时同样也提供了goBack()方法用于返回上一页

跨平台编译

  • Uni中通过代码中的注释//#ifdef APP-PLUS 与//#endif配合来实现不同平台的条件编译
  • RN中通过Platform.OS = 'ios/android/web'获取内核的方式来在代码中实现条件编译以及文件命名规则两种方式来区分平台特定代码如index.android.ts/index.ios.ts/index.web.ts所读取的文件是按照目标平台来自动读取的

持续更新......

Edited Jun 21, 2022 by JayChen
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking