2017-08-14 1 views
0

Très bien, donc j'ai vu tous les threads mais n'arrive pas à le faire fonctionner.Injecter le script inline dans cordova wkwebview IOS

<meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline'; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; media-src *; img-src *"> 

Si j'ajoute directement:

<script type="text/javascript"> 
     alert('Hello world'); 
</script> 

cela fonctionne.

..mais .. si je l'injecte à partir de localStorage il bloque l'application. Je peux injecter html et css parfaitement bien.

J'ai ces MNP installés:

<plugin name="cordova-plugin-wkwebview-engine" spec="git+https://github.com/apache/cordova-plugin-wkwebview-engine.git#1.0.0" /> 
<plugin name="cordova-plugin-wkwebview-file-xhr" spec="^1.0.0" /> 
+0

Montrez-nous comment vous injectez de localStoage – Eric

Répondre

0

J'utilise cette petite fonction pour le charger. Ce qui fonctionne avec UIWebView

Nate.createScript = function(input){ 
    var head = document.getElementsByTagName('head')[0] 
    var el = document.createElement('script') 
    el.setAttribute('type', 'text/javascript') 
    el.innerText = input 
    head.appendChild(el) 
} 

Et localStorage ressemble à quelque chose comme:

localStorage.js = "alert('hello world')"; 
Nate.createScript(localStorage.js) 
+0

En fait, qui a travaillé -.- problème réside apparemment lors du chargement de l'ensemble qui est webpack js code généré. Il lance cette erreur dans xcode: WebPageProxy.DecidePolicyForNavigationAction Il se plaint dans la console safari avec certaines polices introuvables avant de se bloquer – AndersD