以下是实例中的uts代码:
/**
- 引用 iOS 系统库,示例如下:
- import { UIDevice } from "UIKit";
- [可选实现,按需引入]
*/
/ 引入 interface.uts 文件中定义的变量 /
import { MyApiOptions, MyApiResult, MyApi, MyApiSync } from '../interface.uts';
/ 引入 unierror.uts 文件中定义的变量 /
import { MyApiFailImpl } from '../unierror';
/**
- 引入三方库
- [可选实现,按需引入]
- 在 iOS 平台引入三方库有以下两种方式:
- 1、通过引入三方库framework 或者.a 等方式,需要将 .framework 放到 ./Frameworks 目录下,将.a 放到 ./Libs 目录下。更多信息详见
- 2、通过 cocoaPods 方式引入,将要引入的 pod 信息配置到 config.json 文件下的 dependencies-pods 字段下。详细配置方式详见
- 在通过上述任意方式依赖三方库后,使用时需要在文件中 import:
- 示例:import { LottieLoopMode } from 'Lottie'
*/
/**
- UTSiOS 为平台内置对象,不需要 import 可直接调用其API,详见
*/
/**
- 异步方法
- uni-app项目中(vue/nvue)调用示例:
- 1、引入方法声明 import { myApi } from "@/uni_modules/uts-api"
- 2、方法调用
- myApi({
- paramA: false,
- complete: (res) => {
- console.log(res)
- }
- });
-
*/
export const myApi : MyApi = function (options : MyApiOptions) {if (options.paramA == true) {
// 返回数据
const res : MyApiResult = {
fieldA: 85,
fieldB: true,
fieldC: 'some message'
};
options.success?.(res);
options.complete?.(res);} else {
// 返回错误
let failResult = new MyApiFailImpl(9010001);
options.fail?.(failResult)
options.complete?.(failResult)
}
}
/**
- 同步方法
- uni-app项目中(vue/nvue)调用示例:
- 1、引入方法声明 import { myApiSync } from "@/uni_modules/uts-api"
- 2、方法调用
- myApiSync(true);
-
*/
export const myApiSync : MyApiSync = function (paramA : boolean) : MyApiResult {
// 返回数据,根据插件功能获取实际的返回值
const res : MyApiResult = {
fieldA: 85,
fieldB: paramA,
fieldC: 'some message'
};
return res;
}
/**
- 更多插件开发的信息详见:https://uniapp.dcloud.net.cn/plugin/uts-plugin.html
*/
以下是页面中调用代码:
import { myApiSync} from "@/uni_modules/jsh-ldd";
onLoad() {
console.log(6728367823648,myApiSync(true))
},
3 个回复
2***@qq.com (作者)
@DCloud_UNI_OttoJi
DCloud_UNI_yuhe
是不是没有用自定义基座运行?
Ask小助手
该bug反馈内容基本完整,包含标题、描述、代码示例、复现步骤及结果,但缺少具体错误日志和已尝试的解决方案细节。代码示例可直接运行,复现步骤描述较模糊(仅"按bug描述操作"),需补充创建插件、添加代码的具体流程。
经分析,此问题并非真实bug,而是概念理解偏差:
utssdk/app-ios/),而非根目录直接引用原生库。用户直接在根目录.uts文件中import { UIDevice } from "UIKit"违反设计规范,导致编译失败。interface.uts定义统一接口app-ios/index.uts中实现iOS逻辑并引用UIKit解决方案:重构插件结构,按平台分离代码,参考UTS插件示例。无需更新HBuilderX即可解决,属开发规范理解问题。
要回复问题请先登录或注册
公告
更多>相关问题