Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 将余烬1.7迁移到余烬2.9_Ember.js_Migration_Ember Cli - Fatal编程技术网

Ember.js 将余烬1.7迁移到余烬2.9

Ember.js 将余烬1.7迁移到余烬2.9,ember.js,migration,ember-cli,Ember.js,Migration,Ember Cli,我们在Ember 1.7上有一个相当大的应用程序构建。有相当一部分代码是遗留的,我们希望重构/重新架构以摆脱它。我们的目标是在最新版本的余烬(目前是2.9),利用余烬引擎,以便稍后我们可以端口部分的应用程序到其他应用程序,如果需要的话。这一次是我们没有太多的新功能的要求,我们有6-8周的时间投资于技术更新。此外,在此期间,我们可能需要向现有应用程序添加一些功能。我们的开发人员可能会被拉到其他一些小项目上工作几周。我们认为在恩伯2。X是至关重要的。2017年,我们可能没有时间进行迁移。目前我们有两

我们在Ember 1.7上有一个相当大的应用程序构建。有相当一部分代码是遗留的,我们希望重构/重新架构以摆脱它。我们的目标是在最新版本的余烬(目前是2.9),利用余烬引擎,以便稍后我们可以端口部分的应用程序到其他应用程序,如果需要的话。这一次是我们没有太多的新功能的要求,我们有6-8周的时间投资于技术更新。此外,在此期间,我们可能需要向现有应用程序添加一些功能。我们的开发人员可能会被拉到其他一些小项目上工作几周。我们认为在恩伯2。X是至关重要的。2017年,我们可能没有时间进行迁移。目前我们有两种选择:

  • 用最新的余烬重新构建应用程序,这意味着在迁移的同时进行重构。如果有新功能,我们将添加到旧应用程序中,并在以后进行迁移
  • 首先重构,在1.7版本的Ember上重新构建架构,去掉我们不想要的遗留代码,在重构完成后进行迁移。如果我们需要向应用程序添加更多功能,我们可以在重构过程中添加。重构完成后,我们将冻结应用程序的新功能
  • 第一种方法风险更大,因为同时进行重构和迁移,事情可能会失控。但如果事情进展顺利,可以在更短的时间内完成

    后一种方法更安全。如果我们在最后用光了时间,我们仍然有一个更好的代码库。只要我们有时间,我们就可以回来做迁移。但这需要更长的时间,因为在迁移到ember 2.x时,我们将需要进行另一次短暂的重构。我们可能永远都没有时间迁移,永远都会被余烬1.7困住

    我们正试图寻找第三种方法,即重构应用程序的较小部分并将其迁移到ember引擎或较小的ember应用程序。并将这些小型引擎/应用程序注入现有大型遗留应用程序。然而,我找不到任何地方提到我们可以在Ember 1.x应用程序中使用Ember 2.x


    任何关于我们能够达到目标的想法、建议和提示都会得到我们的赞赏。还有一件事,使用RequireJS的现有应用程序。

    实际上,我认为您应该考虑两种迁移:

    • 迁移到
      ember 2.9
    • 并迁移到
      ember cli

    我认为最重要的问题是,是否有可能在一小步内跳转到
    ember 1.13
    。这在很大程度上取决于您对私有API的使用。如果你能在几个小时内跳到余烬1.13,那应该是你的第一步

    如果你有一个
    1.13
    应用程序没有遭到反对,你实际上可以直接跳到
    2.x
    。因此,这里的否决数量将帮助您评估所需的工作


    现在,让我们谈谈跳转到
    ember cli
    。这可能比跳转到
    ember 2.9
    要困难得多,因为您必须触摸每个文件!尽快在
    1.7
    1.13
    上执行此操作可能是个好主意。然而,这是否是一个好主意取决于你和你的队友的知识。如果您在
    1.x
    阶段对
    ember cli
    有相当的了解,您可以尝试一下。如果你没有这方面的知识,就很难获得这方面的知识,因为互联网并没有被冻结。从那时起,很多事情都发生了变化


    如果您可以使用
    ember cli
    1.13
    上运行您的应用程序,那么这是一个重构和消除所有不推荐的好方法。不要过度重构你的代码。如果您可以跳转到
    2.9
    ,请执行该操作,然后再执行重构


    如果您无法进行这些多步骤升级,我建议您选择1。有些事情是这样的,但是我怀疑你是否能节省很多时间

    我可能会尝试在
    2.9
    上重建应用程序,尽可能少地重构,尽可能多地重用代码。稍后开始对引擎进行重构