gpt4 book ai didi

javascript - ReactNative native-modules Promise 传递字段和 Swift

转载 作者:搜寻专家 更新时间:2023-10-31 22:41:34 25 4
gpt4 key购买 nike

我正在尝试使用 Swift 并传递一个字段(数组)在 React Native 中运行一个 promise 。这是我的代码:

GuidedTourInterfaceBridge.m

@interface RCT_EXTERN_MODULE(GuidedTourInterface, NSObject)

RCT_EXTERN_METHOD(readFile(_ arr: NSArray, resolver: RCTPromiseResolveBlock resolve, rejecter reject: RCTPromiseRejectBlock reject))
@end

GuidedTourInterface.swift:

...
@objc
func readFile(_ arr: NSArray, resolver resolve: RCTPromiseResolveBlock, rejecter reject: RCTPromiseRejectBlock) -> Void {
...
resolve(["success" : true, "base64Content" : base64Content ])
}
...

JS 文件:

...
readFileInfoJson = async () => {
try {

var result = await guidedTourInterface.readFile([this.props.mapToShow+"/info.json"]);
...
} catch (e) {
console.error(e);
}
}

我收到的错误信息:

guidedTourInterface.readFile is not a function. (In 'guidedTourInterface.readFile([_this.props.mapToShow+"/info.json"])', 'guidedTourInterface.readFile' is undefined)]

您对如何解决这个问题或我做错了什么有什么建议吗?提前致谢

最佳答案

我能够弄清楚如何解决问题。这是任何可能需要的人的解决方案

GuidedTourInterfaceBridge.m

RCT_EXTERN_METHOD(readFile:(NSArray *)arr resolve:(RCTPromiseResolveBlock *)resolve reject:(RCTPromiseRejectBlock *)reject)

GuidedTourInterface.swift:

  func readFile(_ arr: NSArray, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {

JS 文件:

var result = await guidedTourInterface.readFile([this.props.mapToShow+"/info.json"])
.then((result) => {

关于javascript - ReactNative native-modules Promise 传递字段和 Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45414289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com