4

私は Swift と Objective-C の初心者ですが、React Native から Swift へのブリッジを作成し、JSON と JSON 配列をパラメーターとして Swift に送信しようとしています。

React 内で、この関数を呼び出したいと思います。

startTrack('some url string', { artist: 'Bruce Springsteen', title: 'Born in the USA' }, [{ url: 'url', type: 'image' }, { url: 'another url', type: 'link' ]})

つまり、文字列、オブジェクト、およびオブジェクト配列です。

私のブリッジのobjective-cファイルには、これがあります:

RCT_EXTERN_METHOD(startTrack:(NSString *)url trackinfo:(NSDictionary *)trackinfo slides:(NSDictionaryArray *)slides)

そして、私の迅速なファイルでは、多くの組み合わせを試しましたが、何もうまくいかないようです:

  @objc func startTrack(url: String, trackinfo: [String: Any], slides: [[String: Any]]) {
    print("Play test", url, trackinfo, slides)
  }

次のエラー メッセージが表示されます。 ネイティブ エラー メッセージに反応する

パラメータを Swift ファイルまで送信するにはどうすればよいですか?

ありがとう

/ピーター

4

2 に答える 2

2

あなたの答えは私を大いに助けてくれましたが、それでも1つの問題がありました

_行頭に迅速なコードを 追加することで修正されました

@objc func startTrack(_ url: String, trackinfo: NSDictionary, slides: [NSDictionary]) {
guard let infoDictionary = trackinfo as? [String: Any],
      let slidesDictionary = slides as? [[String: Any]] else {
    return
    } 
print("Play test", url, infoDictionary, slidesDictionary)
}              
于 2019-10-09T06:17:03.297 に答える