HarmonyOS 鸿蒙Next中ArkTS是否不完美兼容TS?
HarmonyOS 鸿蒙Next中ArkTS是否不完美兼容TS?
想给String 类型增加一个’md5’ 快捷方法
// 声明全局扩展
import CryptoJS from '@ohos/crypto-js'
declare global {
interface String {
// 添加一个新的方法
encryptionWithConfig(): string;
}
}
String.prototype.encryptionWithConfig = function() {
return CryptoJS.MD5(this).toString()
}
使用
this.password.encryptionWithConfig()
预编译没有提示问题,运行就报错
ERROR: ArkTS:ERROR File: /entry/src/main/ets/pages/LoginPage.ets:193:30
Property 'encryptionWithConfig' does not exist on type 'String'.
这是不是说明ArkTS 不兼容啊,有没有大佬知道的,怎么解决
更多关于HarmonyOS 鸿蒙Next中ArkTS是否不完美兼容TS?的实战教程也可以访问 https://www.itying.com/category-93-b0.html
7 回复
String和string是有区别的,目前识别的默认是string,小写
更多关于HarmonyOS 鸿蒙Next中ArkTS是否不完美兼容TS?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
我知道有区别,但是ts 是这么写的,而且也可以,难不成去扩展string?,大小写我反复试过了,阁下有什么可以解决的吗,目前我用函数代替的。
没办法,不去扩展string,只能用函数,
我扩展String的replaceAll方法也遇到了这个问题,感觉鸿蒙系统是阉割版的ts,坑太多。
在HarmonyOS 鸿蒙Next中,ArkTS是基于TypeScript(TS)的扩展,主要针对鸿蒙生态进行了优化和增强。虽然ArkTS保留了TS的核心语法和特性,但由于其专注于鸿蒙设备的高性能和低功耗需求,部分TS的库和功能可能无法完全兼容。开发者在使用ArkTS时,需要注意其对TS的特定限制和扩展,确保代码在鸿蒙环境中的最佳表现。