2016-03-22 2 views
1

Ich möchte meine in Enterprise Studio v10 erstellte Wakanda-Anwendung in Enterprise Studio/Server v11 verschieben. Ich kann die Lösung erfolgreich starten, aber wenn ich versuche, meine Webapp in Browsern anzuzeigen, Wakanda Studio protokolliert den Fehler:Aktualisierung auf Wakanda 11: "[Backend] Kann die Eigenschaft 'replace' von undefined in undefined on line undefined nicht lesen"

[Backend] Cannot read property 'replace' of undefined in undefined on line undefined

und der Browser zeigt nur eine weiße Seite mit einigen Konsole Fehler (unten).

Edit: Auskommentieren alle Vorkommen von .replace() löst das Problem nicht. Ich glaube nicht, dass es möglich ist, dass dieses Problem das Ergebnis von .replace() Aussagen ist, die ich geschrieben habe.

Ich verwende string.replace() mit regulären Ausdrücken an einigen Stellen. Der Code funktioniert perfekt in v10 und bin verwirrt darüber, was könnte falsch sein. Hier

ist ein Beispiel dafür, wie ich bin mit replace() im Code:

var tempString = ""; 
tempString = tempEntity.sourceProjects; 
tempString = tempString.replace(/,/g, " "); 
tempString = tempString.replace(/other_/, "Other: "); 

Der Code war schlanker vor-ich es brach in Stücke in einem Versuch, die loszuwerden Fehler, aber kein Würfel.

Browser mit Konsole Fehler: Browser errors

Was ich sehe, wenn ich auf Klick "Loader.js 2073"

loader.js:2073

+0

regenerieren was Sie in Zeile 2157 des Laders zu sehen. js –

+0

[! [loader.js: 2157] [1]] [1] [1]: http://i.stack.imgur.com/9g2Ug.png – NAMS

+0

Hallo Tim, das habe ich heute gelöst. Ich habe meine index.package.json Datei in meiner index.waPage gelöscht und Wakanda v11 neu generieren lassen. Die Website funktioniert jetzt einwandfrei. Die alte Datei index.package.json funktioniert in v10 einwandfrei. Das hatte nichts mit Code zu tun, den ich geschrieben hatte. – NAMS

Antwort

1

1) Beenden Wakanda
2) Löschen Sie die alte index.package.json Datei innerhalb von index.waPage
3) Restart Wakanda und lassen Wakanda v11 es

+0

Danke- Ich habe alle Vorkommen von '.replace()' geändert, um auf 'tempString' nur bedingt ausgeführt zu werden, wenn 'tempString.length> 0' ist. Das hat mein Problem jedoch nicht gelöst. Der von mir zitierte Code-Block ist jetzt genau so, wie Sie ihn haben. – NAMS

+0

Was ist in TempEntity.sourceProjects und was in Zeile 2157 von loader.js ist –

+0

'tempEntity.sourceProjects' ist eine Zeichenfolge; Ich bekomme tempEntity von einer Datenspeicherabfrage: 'var pieceCollection = ds.DataRequestTemp.query (" Benutzername =: 1 ", mySession.user.name);' Dann navigiere ich durch jede zurückgegebene Entität in der Entity Collection über: 'pieceCollection.forEach ( \t \t Funktion (tempEntity) {' auch Zeile 2157: i.stack.imgur.com/9g2Ug.png – NAMS

0

Sie haben den Fehler: „Kann nicht Eigenschaft lesen 'ersetzen' von undefined "weil in Zeile 2 tempEntity eine leere Zeichenfolge ist und Sie tempEntity.sourceProjects schreiben.

Der Wert von tempEntity.sourceProjects ist "undefiniert". Wenn Sie versuchen, in Zeile 3 zu ersetzen, wird dieser Fehler angezeigt.

Issam

+0

Danke, das war eine gute Idee, aber das Problem war mit meiner index.waPage index.package.json Datei. Ich fand das, indem ich es löschte und es Wakanda Studio v11 erlaubte es neu zu erstellen. Die Website funktioniert jetzt in v11 einwandfrei. Die alte Datei index.package.json läuft in v10 gut, weshalb ich nicht sicher bin, warum v11 sie nicht toleriert hat. – NAMS

Verwandte Themen