J'obtiens l'erreurInAppBroswer: Uncaught SyntaxError: Déclarations de portée limitée .. pas encore supporté lors du chargement de js sur Android App. en dehors du mode strict
Uncaught SyntaxError: déclarations Bloc-scope (LET, const, fonction, classe) pas encore pris en charge en dehors du mode strict
lorsque le js suivant est ajouté à la tête html,
;
;frappe.socket = {
open_tasks: {},
open_docs: [],
emit_queue: [],
...
doc_open: function(doctype, docname) {
"use strict";
if (!frappe.socket.last_doc || (frappe.socket.last_doc[0] != doctype && frappe.socket.last_doc[0] != docname)) {
frappe.socket.socket.emit('doc_open', doctype, docname);
}
frappe.socket.last_doc = [doctype, docname];
},
...
}
Note J'ai ajouté "use strict"; basé sur les threads de stackoverflow existants. Je reçois toujours l'erreur. Le débogueur chrome pointe sur la ligne ci-dessous.
frappe.socket.last_doc = [doctype, docname];
Le navigateur est une application cordova exécutée dans Android Studio Emulator. Je pense qu'il utilise InAppBrowser. Le js restant ne se charge pas après cette erreur. Je ne suis pas sûr quel code a besoin du mode strict.
Le même code fonctionne très bien sans "use strict" dans chrome, Edge, FF.