index.html
'u göstermek için React Native web görünümünü kullanıyorum ve HTML uygulamaya karışıklık gönderecek. Uygulama daha sonra mesajı alacak ve konsola yazacaktır. Sorun, uygulamanın anında, postMessage
başlığında çalıştırıldığında mesaj alamıyor olmasıdır. Ben HTML bitmiş yükleme ile ilgili belki düşünüyorum. Daha sonra setTimeout
ile bir gecikme kullandım ve işe yaradı.yerel html post yanıtı WebView'e ulaşılamıyorMessage
Şimdi bilmek istiyorum:
- bu sorunu çözmek için daha iyi bir yolu var mı?
- Neden 100 milisaniye gecikme çalışmadı, ancak 200 milisaniye gecikti?
React Native sürüm 0.39.0 ve Node sürüm 7.2.0 kullanıyorum.
index.html
<head>
<title>Index</title>
<script type="text/javascript" src="index.js"></script>
<script type="text/javascript">
// can not be received
postMessage('send to react native from index inline, no delay', '*');
// can not be received
setTimeout(function(){
postMessage('send to react native from index inline, delay 0 milliscond', '*')
}, 0);
// can received
setTimeout(function(){
postMessage('send to react native from index inline, delay 100 milliscond', '*')
}, 100);
onload = function() {
// can not be received
postMessage('send to react native from index inline after onload, no delay', '*')
// can received
setTimeout(function() {
postMessage('send to react native from index inline after onload, delay 0 milliscond', '*')
}, 0);
};
</script>
index.js
// can not be received
postMessage('send to react native from index.js, no delay', '*');
// can not be received
setTimeout(function() {
postMessage('send to react native from index.js, delay 100 milliscond', '*')
}, 100);
// can received
setTimeout(function() {
postMessage('send to react native from index.js, delay 200 milliscond', '*')
}, 200);
Yerli web_view_page.js
tepki: Burada var bugüne kadar kodudur 10Krom konsol günlüğü
2016-12-21 11:45:02.367 web_view.js:147 onMessage: send to react native from index inline after onload, delay 0 milliscond
2016-12-21 11:45:02.491 web_view.js:147 onMessage: send to react native from index inline, delay 100 milliscond
2016-12-21 11:45:02.628 web_view.js:147 onMessage: send to react native from index.js, delay 200 milliscond