Используя функцию onmessage, я получил данные из веб-просмотра и хочу сохранить эти данные, например. значение кэша в reducer.so мне нужно вызывать реквизиты внутри onmessage
здесь я храню полученные данные в массиве и передаю массив this.props.cmidata ({'value': cmidataArray}), но я получаю ошибку, неопределенную не является объектом (оценивая this.props)
<WebView
source={Platform.OS === 'ios' ?
{ uri: RNFS.LibraryDirectoryPath + "/offlineplayer/index.html" } :
{ uri: 'file:///android_asset/offlineplayer/index.html' }
}
ref={(webView) => this.webView = webView}
originWhitelist={["*"]}
javaScriptEnabled={true}
domStorageEnabled={true}
startInLoadingState={true}
useWebKit={true}
onLoad={() => this.sendPostMessage()}
onMessage={this.onMessage}
allowFileAccess={true}
/>
onMessage() {
objcache = event.nativeEvent.data
var cache = JSON.parse(objcache)
//code to store the value in reducer
var cmidataArray = []
let cmidatavalues = {
course_code: this.state.id,
onlineCmidataJsonObjectList: cache
}
cmidataArray.push(cmidatavalues)
this.props.cmidata({ 'value': cmidataArray })
}