UTS iOS插件

1、UTS插件无法出现

再uniapp x中使用时,必须给这个插件高度和宽度,否则出不来!

swift 复制代码
<uts-hello-view buttonText="点击按钮内容" style="width:375px;height: 375px;background-color: aqua;"></uts-hello-view>

2、无法运行

检查是否都已经Podfile文件中版本修改为12

问题:Sandbox: bash(72928) deny(1) file-write-create

方法:build settings->User Script Sandboxing 修改为NO

3、使用第三方库时,不能在.h文件中导入这个内容第三方库 !!!

4、swift 如果类添加了public前缀,那么无法添加协议MAMapViewDelegate,会报错!!!

5、如何在uts插件中调用swift的方法

首先,swift必须是public 或者open修饰,比如 public class NHT_DemoView

但是高德地图又不能用这个修饰,所以将高德地图添加到一个view上,然后将这个view添加到另一个通过

public修饰的类上,通过这个类调用高德地图的api;

6、如何在UTS插件中使用swift的闭包

swift:

@objc open var SelectLocationChangeBlock: (([String:Any])->Void)?

UTS插件:

swift 复制代码
NVLoad() : NHT_DemoView {
			// -----NHT_AMAPView
			let button = new NHT_DemoView()
			button.SelectLocationChangeBlock = (res : any) => {
				this.$emit('fetchgis', res)
			};
	return button
		},

this.$emit传值报错,error: cannot convert value of type 'String' to expected argument type '[String : Any]?'

因为传值类型不对,可以自己声明一个变量,然后当参数传值

swift 复制代码
const map1 = new Map<string,any>()
			map1.set('a', 'alpha');

或者改变响应回调的写法(必须按照你实际的返回内容),

swift 复制代码
button.SelectLocationChangeBlock = (res : Map<string, any>) => {
				this.$emit('fetchgis', res)
			};

7、不能全用self.bounds,有可能出不来啊!!!!

需要直接写死frame,或者使用约束;

8、error: uni_modules/nhyt-texs/utssdk/app-ios/src/index.swift:61:9: error: contextual closure type '(Any, Any) -> Void' expects 2 arguments, but 1 was used in closure body

可能是watch中出现的问题

比如监听下面的值

"enableLocation": {//允许定位

type: Boolean,

default: false

},

watch: {

//这样写对,必须有newValue : boolean, oldVel : boolean,只有newValue会报这个错误

"enableLocation": {

handler(newValue : boolean, oldVel : boolean) {

// if (!this.isInitLocation && newValue && !this.innerEnableLocation) {

// this.isInitLocation = true

// this.innerEnableLocation = newValue

// this.initLocation()

// }

},

immediate: false

},

}

9、emit

只能全部小写,有大写的不行,比如下面fetchGis就不行,而fetchgis可以

emits: ['fetchGis', "locate", "hhhh", "fetchgis"],

相关推荐
QuantumLeap丶12 分钟前
《Flutter全栈开发实战指南:从零到高级》- 22 -插件开发与原生交互
android·flutter·ios
2501_9159214334 分钟前
混合开发应用安全方案,在多技术栈融合下构建可持续、可回滚的保护体系
android·安全·ios·小程序·uni-app·iphone·webview
Sheffi6637 分钟前
RunLoop Mode 深度剖析:为什么滚动时 Timer 会“失效“?
ios·objective-c
QuantumLeap丶1 小时前
《Flutter全栈开发实战指南:从零到高级》- 21 -响应式设计与适配
android·javascript·flutter·ios·前端框架
2501_915106322 小时前
Charles抓包怎么用 Charles抓包工具详细教程、网络调试方法、HTTPS配置与手机抓包实战
网络·ios·智能手机·小程序·https·uni-app·webview
00后程序员张2 小时前
Fastlane 结合 开心上架,构建跨平台可发布的 iOS 自动化流水线实践
android·运维·ios·小程序·uni-app·自动化·iphone
wjm0410062 小时前
秋招ios面试 -- 真题篇(三)
ios·面试·职场和发展
ii_best2 小时前
ios脚本开发工具安装按键精灵uncOver越狱教程ios14以及以下系统
ios·自动化·编辑器
游戏开发爱好者82 小时前
iOS 性能测试的工程化方法,构建从底层诊断到真机监控的多工具测试体系
android·ios·小程序·https·uni-app·iphone·webview
2501_916008893 小时前
iOS App 混淆的真实世界指南,从构建到成品 IPA 的安全链路重塑
android·安全·ios·小程序·uni-app·cocoa·iphone