HarmonyOS 鸿蒙Next 新建的ets工程为何不能引用@ohos.net.http的接口
HarmonyOS 鸿蒙Next 新建的ets工程为何不能引用@ohos.net.http的接口
创建一个ets的demo工程,在app.ets中 直接调用 http的接口,构建可以通过,比如:
import http from "@ohos.net.http";
let req = http.createHttp();
但是封装到一个类里就不行,例如
class HttpUtil {
private req: http.HttpRequest; // line:38
constructor() {
this.req = http.createHttp();
}
}
构建显示错误信息如下:
ETS:ERROR File: D:\harmony\demo\entry\src\main\ets\default\app.ets:38:18
TS2503: Cannot find namespace ‘http’.
不仅这个写法,还有
this.req.request(url, options).then((data: http.HttpResponse) => { ...});
同样报错
是不是当前的构建对ts的写法有限制,还做不到全量的ts语法支持?!
更多关于HarmonyOS 鸿蒙Next 新建的ets工程为何不能引用@ohos.net.http的接口的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
请问楼主解决了吗,是需要把变量定义在哪里吗?
更多关于HarmonyOS 鸿蒙Next 新建的ets工程为何不能引用@ohos.net.http的接口的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
楼主你好,目前暂不支持该能力,请持续关注HarmonyOS官网。
欢迎开发小伙伴们进来帮帮楼主
在HarmonyOS 鸿蒙Next中,新建的ets(Extension TypeScript)工程无法直接引用@ohos.net.http
的接口,主要原因在于ets工程主要面向前端应用开发,而@ohos.net.http
接口通常用于系统级或应用后端的网络请求,它更多地被ArkTS(Ark TypeScript)或原生模块(如Java或C++)使用。
ets工程主要用于开发具有UI界面的应用程序,它基于TypeScript语言,并提供了丰富的UI组件和框架,以便开发者能够高效地构建用户界面。由于ets工程在设计上更注重于前端逻辑和UI展示,因此它并不直接支持系统级的网络请求接口。
如果你需要在ets工程中进行网络请求,建议使用HarmonyOS提供的网络请求库,如Fetch API或XMLHttpRequest,这些库在ets工程中是可以正常使用的,并且能够满足大多数前端网络请求的需求。
如果你确实需要在ets工程中调用@ohos.net.http
接口,可能需要考虑将相关逻辑封装在ArkTS或原生模块中,并通过某种形式的接口(如JSBridge)与ets工程进行通信。
如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html,