华为 HarmonyOS NEXT 彻底抛弃了 Android 兼容层,纯血鸿蒙时代到来。开发鸿蒙原生应用,绕不开一门新语言:ArkTS。

洹拓科技在为新乡企业做移动端应用时,已经开始接触鸿蒙项目。今天从零开始,聊聊 ArkTS 的基本语法和开发体验。

ArkTS 是什么

ArkTS 是华为基于 TypeScript 扩展的声明式 UI 开发语言,专为 HarmonyOS 设计。

核心特点:

  • TypeScript 超集:TS 开发者几乎零学习成本
  • 声明式 UI:类似 SwiftUI、Jetpack Compose 的写法
  • 状态驱动:数据变化自动刷新 UI
  • 高性能:编译为方舟字节码,运行效率高

变量声明

ArkTS 的变量声明和 TypeScript 基本一致:

// 不可变变量
const appName: string = '洹拓助手';

// 可变变量
let count: number = 0;

// 类型推断(推荐)
let userName = '张三'; // 自动推断为 string

但有个重要区别:ArkTS 要求更严格的类型标注,不支持 any 类型。

// ❌ 编译报错
let data: any = {};

// ✅ 正确写法
let data: Record<string, Object> = {};

状态管理

ArkTS 用装饰器管理组件状态:

@Component
struct Counter {
@State count: number = 0;

build() {
Column() {
Text(`计数: ${this.count}`)
.fontSize(24)

Button('增加')
.onClick(() => {
this.count++;
})
}
}
}

常用装饰器

  • @State:组件内部状态
  • @Prop:父 → 子单向传递
  • @Link:父 ↔ 子双向绑定
  • @Provide / @Consume:跨层级共享
  • @Observed / @ObjectLink:嵌套对象观察

声明式 UI

ArkTS 的 UI 写法类似 SwiftUI:

@Component
struct UserCard {
@Prop userName: string;
@Prop avatar: string;

build() {
Row() {
Image(this.avatar)
.width(60)
.height(60)
.borderRadius(30)

Column() {
Text(this.userName)
.fontSize(18)
.fontWeight(FontWeight.Bold)

Text('高级会员')
.fontSize(14)
.fontColor('#666')
}
.margin({ left: 12 })
}
.padding(16)
.backgroundColor(Color.White)
.borderRadius(12)
}
}

网络请求

鸿蒙用 @ohos.net.http 做网络请求:

import http from '@ohos.net.http';

async function fetchUserInfo(userId: string): Promise<Object> {
const httpRequest = http.createHttp();

try {
const response = await httpRequest.request(
`https://api.example.com/users/${userId}`,
{
method: http.RequestMethod.GET,
header: {
'Content-Type': 'application/json'
}
}
);

if (response.responseCode === 200) {
return JSON.parse(response.result as string);
}
} finally {
httpRequest.destroy();
}
}

路由导航

鸿蒙用 router 模块做页面跳转:

import router from '@ohos.router';

// 跳转到新页面
router.pushUrl({
url: 'pages/Detail',
params: {
userId: 1001
}
});

// 返回上一页
router.back();

洹拓科技的开发体验

在做鸿蒙项目时,我们总结了几点感受:

优点

  1. TypeScript 友好:TS 开发者几乎零学习成本
  2. 声明式 UI 简洁:比传统 XML 布局直观
  3. 性能优秀:编译为字节码,运行流畅
  4. 工具链完善:DevEco Studio 体验接近 Android Studio

痛点

  1. 文档不够完善:很多 API 文档缺失或过时
  2. 生态还在建设:第三方库少,很多功能要自己实现
  3. 调试工具一般:日志和性能分析工具不如成熟平台
  4. 真机测试门槛高:需要华为开发者账号和真机

洹拓科技的鸿蒙开发服务

如果你的企业想做鸿蒙原生应用,洹拓科技可以提供:

  • 技术评估:分析现有应用迁移到鸿蒙的可行性
  • 应用开发:从设计到上线,交付完整产品
  • 技术培训:帮你的团队快速上手 ArkTS

我们为辉县及新乡本地企业提供鸿蒙应用开发服务,欢迎联系我们。


新乡洹拓科技有限公司
地址:河南省新乡市辉县市金城百货四楼
电话:400-829-9957
业务:鸿蒙开发 | 移动应用 | 软件开发 | 技术咨询