网站大量收购独家精品文档,联系QQ:2885784924

跨平台开发-04-Taro核心语法(二).pdf

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

跨平台开发Taro

刘军liujun

目录

content1自定义组件

2跨端兼容实现

3Redux状态管理

4卷皮项目实战

coderwhy组件及生命周期

◼在Taro中,除了应用和页面组件有生命周期之外,Taro的组件也是生命周期,如下图所示:

◼下面我们来编写一个HYButton组件。

创建组件

定义属性

样式编写

定义插槽

定义生命周期

组件可编写页面生命周期吗?

✓class组件默认不行,需要单独处理

✓但是函数组件是支持的

页面可以编写组件生命周期吗?可以

coderwhy跨端兼容方案

◼Taro的设计初衷就是为了统一跨平台的开发方式,并且已经尽力通过运行时框架、组件、API去抹平多端差异,但是由于不同的

平台之间还是存在一些无法消除的差异,所以为了更好的实现跨平台开发,Taro中提供了如下的解决方案。

◼方案一:内置环境变量

Taro在编译时提供了一些内置的环境变量来帮助用户做一些特殊处理。

通过这个变量来区分不同环境,从而使用不同的逻辑。在编译阶段,会移除不属于当前端的代码,只保留当前端的代码。

内置环境变量虽然可以解决大部分跨端的问题,但是会让代码中存在很多逻辑判断的代码,影了响代码的可维护性,而且也

让代码变得丑陋。

为了解决这种问题,Taro提供了另外一种跨端开发的方式作为补充。

◼方案二:统一接口的多端文件

开发者可以通过将文件修改成原文件名+端类型的命名形式(端类型对应着process.env.TARO_ENV的取值),不同端的

文件代码对外保持统一接口,而引用的时候仍然是import原文件名的文件。

Taro在编译时,会跟根据当前编译平台类型,精准加载对应端类型的文件,从而达到不同的端加载其对应端的文件。

coderwhy内置环境变量

◼内置环境变量(process.env.TARO_ENV),该环境变量可直接使用

process.env.TARO_ENV,用于判断当前的编译平台类型,有效值为:weapp/swan/alipay/tt/qq/jd/h5/rn。

通过这个变量来区分不同环境,从而使用不同的逻辑。

在编译阶段,会移除不属于当前平台的代码,只保留当前平台的代码,例如:

◼注意事项:不要解构process.env来获取环境变量,请直接以完整书写的方式(process.env.TARO_ENV)来进行使用。

coderwhy统一接口的多端文件

◼统一接口的多端文件这一跨平台兼容写法有如下三个使用要点:

1.不同端的对应文件一定要统一接口和调用方式。

2.引用文件的时候,只需写默认文件名,不用带文件后缀。

3.最好有一个平台无关的默认文件,这样在使用TS的时候也不会出现报错。

◼常见有以下使用场景:

多端组件(属性,方法,事件等需统一)

✓针对不同的端写不同的组件代码

多端脚本逻辑(属性、方法等需统一)

✓针对不同的端写不同的脚本逻辑代码

coderwhy认识ReduxToolkit(RTK)

◼ReduxToolkit是官方推荐的编写Redux逻辑的方法。

以前我们在使用redux的时候,通常会将redux代码拆分在多个文件中,比如:constants、action、reducer等

这种代码组织方式过于繁琐和麻烦,导致代码量过多,也不利于后期管理

ReduxToolkit就是为了解决这种编码方式而诞生。

并且以前的createStore方式已标为过时,而ReduxToolkit已成为官方推荐;

◼安装ReduxToolkit:

文档评论(0)

yzs890305 + 关注
实名认证
内容提供者

计算机二级持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年11月02日上传了计算机二级

1亿VIP精品文档

相关文档