详解HarmonyOS NEXT系统中ArkTS和仓颉的混合开发

布局王
• 阅读 3

连续分享了很多天鸿蒙仓颉语言的开发教程,大家现在应该都知道鸿蒙开发有ArkTs和仓颉两种开发语言,这两种语言有些相似,而且还支持混合开发,今天就分享一下怎么实现ArkTs和仓颉的混合开发,分不清这两种语言的友友今天可能要头疼了。 官方文档对这两种语言的混合开发进行了非常大篇幅非常详细的介绍,但是幽蓝君自己学习完之后感觉不用那么麻烦,因为编译器能帮我们做绝大多数的工作。 首先打开DevEco Studio新建项目,此处选择CangJie Hybrid即可创建混合开发项目: 详解HarmonyOS NEXT系统中ArkTS和仓颉的混合开发 看一下创建后的结构目录: 详解HarmonyOS NEXT系统中ArkTS和仓颉的混合开发 可以看到项目中分别有cangjie的目录和ArkTs的项目目录,大家仔细看一下可以发现项目的入口文件是在ArkTS目录中的,就是说虽然创建项目选择的是仓颉混编项目,其实是仓颉代码依附在ArkTs的项目上,所以在混合开发项目运行过程中的页面控制器和主线程大都和仓颉无关,除后端功能以外,仓颉负责的部分主要是开发组件。 说的更简单一点,在混编项目中,ArkTS的页面可以嵌入仓颉的部分UI,而仓颉则不可以创建单独的页面。所以在混编项目中页面的生命周期和路由跳转也都和仓颉无关。 下面分享下详细的开发过程。 新创建的项目为我们演示了ArkTs如何调用仓颉中的方法,幽蓝再介绍下ArkTs如何引用仓颉的组件。 首先在cangjie文件夹右键创建空白仓颉页面,创建完成后在cangjie文件夹下新增了.cj文件,不光如此,在Arkts目录中新增了名字相同的.ets文件: 详解HarmonyOS NEXT系统中ArkTS和仓颉的混合开发 这是编译器自动帮我们完成了封装工作,现在我们想要跳转仓颉页面只需要跳转同名的ArkTs页面就行了。 详解HarmonyOS NEXT系统中ArkTS和仓颉的混合开发 看一下这个自动创建的页面的代码,就是创建了一个ArkTS页面并引入封装好的仓颉开发的组件。 所以混合开发我们要做的工作就是在仓颉文件中写仓颉,在ArkTS文件中写ArkTS,其他所有的工作编译器都替我们做了,鸿蒙对开发者实在是太太太友好了。 最后有一些感慨,幽蓝君从业十年,熟识多种开发语言,有的面向对象,有的面向过程,有的注重性能。鸿蒙的ArkTs和仓颉是唯二的为开发者考虑的开发语言,让常见在软件背后默默敲代码的老程序员觉得无比感动。 今天就到这吧,感谢大家阅读。##HarmonyOS语言##仓颉##购物#

点赞
收藏
评论区
推荐文章
布局王 布局王
9小时前
仓颉开发语言入门教程:搭建开发环境
仓颉开发语言作为华为为鸿蒙系统自研的开发语言,虽然才发布不久,但是它承担着极其重要的历史使命。作为鸿蒙开发者,掌握仓颉开发语言将成为不可或缺的技能,今天我们从零开始,为大家分享仓颉语言的开发教程,今天要分享的是搭建开发环境。仓颉在DevEcostudio和
布局王 布局王
9小时前
仓颉开发语言入门教程:常见UI组件介绍和一些问题踩坑
幽蓝君发现一个问题,仓颉开发语言距离发布马上一年了,一些知名App已经使用仓颉开发了许多功能,但是网络上关于仓颉开发语言的教程少之又少,系统性的教程更是没有,仓颉官网的文档也远远不如ArkTS详尽。现阶段对于想学习仓颉的友友来说非常困难,幽蓝君能做一个针对
布局王 布局王
9小时前
鸿蒙仓颉开发语言实战教程:实现商城应用详情页
昨天有朋友提到鸿蒙既然有了ArkTs开发语言,为什么还需要仓颉开发语言。其实这个不难理解,安卓有Java和Kotlin,iOS先后推出了ObjectiveC和Swift,鸿蒙有两种开发语言也就不奇怪了。而且仓颉是比ArkTs更加灵活的语言,虽然现在了解它的
布局王 布局王
9小时前
鸿蒙仓颉开发语言实战教程:自定义tabbar
大家周末好呀,今天继续分享仓颉语言开发商城应用的实战教程,今天要做的是tabbar。大家都知道ArkTs有Tabs和TabContent容器,能够实现上图的样式,满足基本的使用需求。而仓颉就不同了,它虽然也有这两个组件,但是它的tabbar参数只支持传入图
布局王 布局王
9小时前
鸿蒙仓颉开发语言实战教程:自定义组件
关于仓颉开发语言我们已经连续分享了很多天,相信大家对于仓颉开发语言已经有了一定的了解。今天我们继续进阶,分享一个仓颉开发语言中的自定义组件知识。本文案例就以上一篇文章中的自定义tabbar为例,因为我们自己开发的tabbar一直放在index.cj文件中总
布局王 布局王
9小时前
鸿蒙仓颉语言开发教程:自定义弹窗
假期第一天,祝大家端午节快乐。昨天观看了时代旗舰尊界S800的发布,不得不感慨这车真好啊~放假闲来无事,继续跟大家分享仓颉语言的开发教程,今天介绍一下自定义弹窗。仓颉语言中的自定义弹窗和ArkTs类似,但是还是有一些不同的地方。在仓颉中通过CustomDi
布局王 布局王
9小时前
鸿蒙Next仓颉语言开发实战教程:订单列表
大家上午好,最近不断有友友反馈仓颉语言和ArkTs很像,所以要注意不要混淆。今天要分享的是仓颉语言开发商城应用的订单列表页。首先来分析一下这个页面,它分为三大部分,分别是导航栏、订单类型和订单列表部分。导航栏由返回按钮和搜索框组成,这里要注意组件横向占满屏
布局王 布局王
9小时前
详解鸿蒙Next仓颉开发语言中的全屏模式
大家好,今天跟大家分享一下仓颉开发语言中的全屏模式。和ArkTS一样,仓颉的新建项目默认是非全屏模式的,如果你的应用颜色比较丰富,就会发现屏幕上方和底部的留白,这是应用自动避让了屏幕上方摄像头区域和底部的导航条区域。但是通常我们不需要这些留白,而是希望应用
布局王 布局王
9小时前
HarmonyOS NEXT仓颉开发语言实战案例:银行App
仓颉语言的商城项目基本开发结束啦,今天跟大家分享新的项目,一个银行app,说是新项目但是大家可能会有些眼熟,在ArkTS的教程中就写过这个项目。今天我们仓颉语言再写一遍,看看和ArkTS有什么不同。首先我们可以看到页面内容撑满了屏幕,所以需要设置沉浸模式,
布局王 布局王
9小时前
HarmonyOS NEXT仓颉开发语言实现画板案例
大家上午好,今天分享一下仓颉开发语言实现的画板案例。最近总是有同学说我写ArkTS冒充仓颉,为了自证清白,截图给大家看一下,确实是仓颉文件:仓颉提供了画布组件Canvas,我们所有的绘制工作都要在画布上进行,所以首先在页面添加一个足够大的画布组件:Canv