鍍金池/ 問答/iOS  HTML/ ios如何傳參給react組件內(nèi)方法

ios如何傳參給react組件內(nèi)方法

ios使用WKwebview,但是如果要返回參數(shù)給js,需要回叫js方法,而我想拿到參數(shù)可以在react組件內(nèi)dispatch了,現(xiàn)在不知道js的方法要怎么寫才能給ios調(diào)用掉并且返回參數(shù)

回答
編輯回答
陪我終

沒有做過 iOS 開發(fā),不太清楚原生的細(xì)節(jié),按你的提問應(yīng)該是能做到調(diào)用 WKwebview 里的 JS 方法了。這樣的話,可以將 React 組件的 this 作用域綁定到回調(diào)方法上,然后就可以在回調(diào)方法上訪問組件 state 了。

例如:

function callback(data){
    // 組件初始化后,通過 bind 進(jìn)行綁定。然后在該方法內(nèi),this 就指向到那個(gè)組件的作用域了。
    // 訪問組件 state 傳遞數(shù)據(jù)
    this.setState({ hello: data })
}

...

class someComponent extends React.Component {
    constructor(){
        super();
        this.state = { hello: "123" }
        callback = callback.bind(this);
    }
    ...
}
2017年2月8日 17:18
編輯回答
淡墨

請(qǐng)問你解決了嗎??我現(xiàn)在也遇到需要跟ios之間互調(diào)得情況,io或者Android調(diào)用我react組件內(nèi)部得方法,始終不能調(diào)用,貌似訪問不了組件內(nèi)部得方法,寫在index.html文件里面可以調(diào)用。請(qǐng)問您是怎么解決得呢????

2018年9月18日 02:22