AskTS语言HarmonyOS计算器实现实验

黑色扁平风格的 HarmonyOS 应用界面,用AskTS语言写的计算器,挺有意思的。界面干净,功能也不复杂,适合刚上手 HarmonyOS 开发的朋友练手。

语法有点像 TypeScript,但又针对 HarmonyOS 做了适配,事件绑定、页面跳转啥的都封装得挺顺,写起来比原生轻便。

比如按钮点击事件,直接一个onClick就能搞定,不用太多冗余逻辑。响应也快,适合做点小工具玩玩。

代码结构也比较清晰,pages目录下就是各个页面,样式和逻辑分得开,改起来方便。

对了,源码在这篇文章里提到过,感兴趣的你可以去瞅瞅:计算器源码

如果你正想试试HarmonyOS的前端开发,不妨从这个小项目下手,边学边改,挺上手的。

folder
AskTS语言-HarmonyOS-计算器的实现-实验源码 预估大小:212个文件
file
app_icon.png 3KB
file
string.json 99B
file
app.json5 220B
file
hvigor-config.json5 1KB
file
hvigorfile.ts 234B
file
hvigorfile.ts 234B
file
event.js 2KB
file
OpenHarmonyTestRunner.ts 4KB
file
Constant.js 3KB
file
service.js 45KB
file
module.json 474B
file
MockKit.js 8KB
file
ExtendInterface.js 1KB
file
ArgumentMatchers.js 3KB
file
VerificationMode.js 1KB
file
assertContain.js 1KB
file
assertPosUnlimited.js 869B
file
ExpectExtend.js 4KB
file
assertInstanceOf.js 1KB
file
assertFalse.js 826B
file
assertFail.js 757B
file
assertPromiseIsPending.js 1KB
file
assertLessOrEqual.js 853B
file
assertLarger.js 849B
file
assertLargerOrEqual.js 859B
file
assertPromiseIsRejected.js 1KB
file
isPromiseLike.js 998B
file
assertNaN.js 820B
file
assertDeepEquals.js 11KB
file
DeepTypeUtils.js 4KB
file
assertPromiseIsResolvedWith.js 2KB
file
assertUndefined.js 844B
file
assertNull.js 824B
file
assertPromiseIsResolved.js 1KB
file
assertLess.js 843B
file
assertPromiseIsRejectedWith.js 2KB
file
assertThrowError.js 2KB
file
assertPromiseIsRejectedWithError.js 3KB
file
assertNegUnlimited.js 868B
file
assertClose.js 1KB
file
ReportExtend.js 5KB
file
OhReport.js 11KB
file
LogExpectError.js 3KB
file
SysTestKit.js 3KB
file
coverageCollect.js 3KB
file
configService.js 11KB
file
DataDriver.js 5KB
file
Filter.js 5KB
file
core.js 5KB
file
interface.js 3KB
file
LICENSE 10KB
file
CHANGELOG.md 618B
file
index.d.ts 5KB
file
BuildProfile.ets 154B
file
oh-package.json5 352B
file
index.ets 5KB
file
index.js 12KB
file
build-profile.json5 489B
file
README.md 13KB
file
index.ts 1KB
file
hvigorfile.ts 783B
file
mock-config-json5-schema.json 563B
file
MockKit.js 9KB
file
VerificationMode.ts 2KB
file
ExtendInterface.js 1KB
file
MockKit.ts 10KB
file
ArgumentMatchers.js 3KB
file
ExtendInterface.ts 2KB
file
ArgumentMatchers.ts 3KB
file
VerificationMode.js 1KB
file
module.json 338B
file
LICENSE 10KB
file
CHANGELOG.md 112B
file
index.d.ts 2KB
file
oh-package.json5 889B
file
index.ets 760B
file
hvigorfile.js 786B
file
index.js 771B
file
build-profile.json5 743B
file
README.md 3KB
file
index.ts 771B
file
.clang-format 2KB
file
hvigorfile.ts 234B
file
obfuscation-rules.txt 1008B
file
mock-config.json5 3B
file
List.test.ets 105B
file
LocalUnit.test.ets 2KB
file
List.test.ets 99B
file
Ability.test.ets 2KB
file
module.json5 219B
file
Index.ets 7KB
file
categories.ets 568B
file
Mine.ets 477B
file
EntryAbility.ets 2KB
file
EntryBackupAbility.ets 436B
file
MyComponent.ets 314B
file
color.json 105B
file
foreground.png 12KB
file
layered_image.json 109B
file
background.png 56KB
file
startIcon.png 20KB
file
main_pages.json 37B
file
backup_config.json 36B
file
string.json 247B
file
color.json 105B
file
string.json 247B
file
string.json 241B
file
module.json5 1KB
file
.tsbuildinfo 122KB
file
npmEntries.protoBin 874B
file
compileContextInfo.json 205B
file
sourceMaps.json 9KB
file
npmEntries.txt 239B
file
mock-config.json 2B
file
Index.protoBin 130KB
file
Index.ts 19KB
file
categories.protoBin 26KB
file
categories.ts 3KB
file
EntryAbility.protoBin 13KB
file
EntryAbility.ts 2KB
file
EntryBackupAbility.ts 504B
file
EntryBackupAbility.protoBin 6KB
file
MyComponent.ts 2KB
file
MyComponent.protoBin 20KB
file
modules.cache 1KB
file
filesInfo.txt 858B
file
dep_info.json 29B
file
ResourceTable.txt 373B
file
watch_logs.cache.json 2B
file
preview.ets 107B
file
mock-config.json5 3B
file
pkgName2SourceRoots.msgpack 4B
file
plugins.msgpack 4KB
file
C%%Users%Administrator%Desktop%231080901420%entry%src%main%ets%entrybackupability%EntryBackupAbility.ets.msgpack 3KB
file
C%%Users%Administrator%Desktop%231080901420%entry%src%main%ets%entryability%EntryAbility.ets.msgpack 6KB
file
watchCompiler.tsbuildinfo 73KB
file
.tsbuildinfo.linter 120KB
file
BuildProfile.ets 868B
file
ResourceTable.h 1KB
file
modules.abc 34KB
file
sourceMaps.map 9KB
file
module.json 2KB
file
8637964863416273026 246B
file
8444237875853769512 227B
file
18285753981675936477 158B
file
16291828306957250796 150B
file
6051760478212223166 230B
file
10289315410944065370 242B
file
3910308306851390887 491B
file
17209252489558791470 497B
file
11036064901853707568 237B
file
3449189918755280551 443B
file
11679092947983038478 230B
file
layered_image.json 95B
file
main_pages.json 23B
file
backup_config.json 36B
file
mock-config.json 2B
file
id_defined.json 941B
file
module.json 2KB
file
ResourceTable.txt 373B
file
resources.index 2KB
file
14193170843324304448 212B
file
7771580664049848801 136B
file
loader.json 883B
file
pkgContextInfo.json 444B
file
module.json 2KB
file
loader-router-map.json 16B
file
temp-router-map.json 16B
file
PreviewBuildParam.json 418B
file
buildConfig.json 2KB
file
oh-package.json5 183B
file
.gitignore 55B
file
build-profile.json5 449B
file
oh-package-lock.json5 965B
file
oh-package.json5 210B
file
.name 13B
file
entry.iml 265B
file
MyApplication.iml 2KB
file
workspace.xml 5KB
file
modules.xml 435B
file
231080901420.iml 290B
file
.gitignore 50B
file
project.cache.json 405B
file
entry.cache.json 2KB
file
2in1SettingConfig_2in1.json 356B
file
phoneSettingConfig_Foldable.json 957B
file
phoneSettingConfig_Phone.json 737B
file
phoneSettingConfig_rd.json 739B
file
previewConfigV2.json 1KB
file
tabletSettingConfig_Tablet.json 962B
file
local.properties 349B
file
code-linter.json5 349B
file
.gitignore 133B
file
build-profile.json5 756B
file
meta.json 91B
file
task-cache.json 37KB
file
file-cache.json 28KB
file
oh-package.json5 142B
file
oh-package.json5 164B
file
dependencyMap.json5 257B
file
report-202412011438092400.json 520KB
file
report-202412011403433090.json 204KB
file
report-202412011403028420.json 180KB
file
report-202412011441426840.json 197KB
file
report-202412011010179260.json 212KB
file
report-202412011439126640.json 175KB
file
report-202412011441385600.json 167KB
file
report-202412011441552220.json 181KB
file
build.log 335KB
file
fileCache.json 2KB
file
output.json 7KB
file
details.json 781B
...
rar 文件大小:554.75KB