2016-07-25 33 views
0

Ich arbeite derzeit an einem Projekt, das alte Software für das Frontend- und Backend-Framework verwendet.Upgrade von gekoppelten Ember- und Laravel-Projekten (gleicher Ordner)

Front-End: Ember 1.8 und Back-End: Laravel 4.2.

Ember muss 2,5 und Laravel muss 5,2 sein.

Ich habe Laravelshift Website für die Aktualisierung der Back-End gesehen, die ich lieber verwenden würde, um Zeit zu sparen.

Jetzt ist die Webanwendung mit Laravel und Ember im selben Verzeichnis eingerichtet. Die Ember-Ordner befinden sich in einem Verzeichnis namens 'client' und die Laravel-Dateien befinden sich unter 'app'.

Ich habe versucht, Ember zu aktualisieren, ohne die Projekte vollständig zu entkoppeln und scheiterte mehrmals, Fehler im Terminal zu bekommen, das sich über das Analysieren von JSON-Dateien beschwert - (bezogen auf package.json/bower.json).

Was ist der richtige Weg? Müssen Sie jede Abhängigkeit einzeln auf Github durchsuchen und prüfen, ob sie mit der neueren Ember-Version kompatibel ist und diese manuell installieren?

Bis jetzt habe ich verwendet: und ein paar andere Führer und habe keine Fortschritte gemacht.

Ich bin mit großen Schluck als Aufgabe Läufer, wenn ich es benutze das Projekt kompilieren es diesen Fehler ausspuckt:

/Users/JCharnock/Desktop/newatp/pt2/build/js-common.js:27 
var emberBuild = path.resolve(pkg.browser.ember); 
             ^

TypeError: Cannot read property 'ember' of undefined 
    at Object.<anonymous> (/Users/JCharnock/Desktop/newatp/pt2/build/js-common.js:27:42) 
    at Module._compile (module.js:409:26) 
    at Object.Module._extensions..js (module.js:416:10) 
    at Module.load (module.js:343:32) 
    at Function.Module._load (module.js:300:12) 
    at Module.require (module.js:353:17) 
    at require (internal/module.js:12:17) 
    at /Users/JCharnock/Desktop/newatp/pt2/gulpfile.js:31:11 
    at Array.forEach (native) 
    at Object.<anonymous> (/Users/JCharnock/Desktop/newatp/pt2/gulpfile.js:25:28) 

Hat jemand Erfahrung mit lästigen Aufgaben wie diese haben? Ein Punkt in die richtige Richtung wäre schön.

Antwort

0

Um für die Glut Teil zu sprechen, würde ich dringend empfehlen, zu ember-cli zu verschieben. Ich habe kürzlich so einen Sprung gemacht, und um ehrlich zu sein, war es ein Los der Arbeit!

Im Allgemeinen sollten Sie versuchen, zuerst zu ember 1.13 zu springen, wenn es möglich ist, und dann über die Marke von 2.0 springen. Dies, weil, wenn Sie Ihr up auf 1.13 ohne irgendwelche Abwertungen läuft es auch unter 2.x läuft!

Also am besten ist wohl diese Reihenfolge:

  • Erster Schritt zu Ember 1,13, alles deaktivieren, die
  • Dann glut-cli bewegen auf andere Plugins hängt
  • zu Ember 2.x springen Dann
  • Rebuild alle Plugin Sachen

Der andere Weg zu gehen, und was ich getan habe, ist von einer neuen ember-cli Anwendung zu starten und Ihre alte Code-Datei nach Datei zu integrieren. Dies ist wahrscheinlich die bessere Lösung, wenn Sie viel ändern müssen, und wenn Sie zu ES6-Modulen wechseln, müssen Sie jede Datei berühren.

Der Nachteil ist, dass Sie nicht die schönen Abwertungen von 1.13 bekommen, Ihre App könnte einfach nicht mehr funktionieren. Sie können dies also nicht für Ihre Hole-App tun, sondern müssen es Datei für Datei machen. Für mich war es eine Woche, nur sitzen und tun, eine Komponente übertragen, testen, reparieren, als nächstes.

Es ist ein großer Sprung. Viel Glück.