Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.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
Javascript AngularJS 1.4-->;Angular 9迁移与bigbang重写_Javascript_Angularjs_Angular_Typescript_Ng Upgrade - Fatal编程技术网

Javascript AngularJS 1.4-->;Angular 9迁移与bigbang重写

Javascript AngularJS 1.4-->;Angular 9迁移与bigbang重写,javascript,angularjs,angular,typescript,ng-upgrade,Javascript,Angularjs,Angular,Typescript,Ng Upgrade,我决定对我正在开发的大规模应用程序进行完全重写,因为它是在AngularJS 1.4中。我转移了大部分HTML和CSS文件,现在准备创建TypeScript文件 我是否需要为1.4版本中的每个JavaScript文件创建一个TypeScript文件,还是会有更少的TypeScript文件?首先,我假设我需要的TypeScript文件数量与JavaScript相同。但在研究之后,我发现很多地方都说“让应用程序的每个页面都成为一个组件”。所以这让我想到,如果我的应用程序总共有5个页面,那么我只需要总

我决定对我正在开发的大规模应用程序进行完全重写,因为它是在AngularJS 1.4中。我转移了大部分HTML和CSS文件,现在准备创建TypeScript文件


我是否需要为1.4版本中的每个JavaScript文件创建一个TypeScript文件,还是会有更少的TypeScript文件?首先,我假设我需要的TypeScript文件数量与JavaScript相同。但在研究之后,我发现很多地方都说“让应用程序的每个页面都成为一个组件”。所以这让我想到,如果我的应用程序总共有5个页面,那么我只需要总共5个TypeScript文件。原始版本包含约80个JavaScript文件

使每个页面都成为组件的目的是使路由器的使用变得容易

这实际上取决于您的应用程序,如果您有一个部分在同一页面中被多次使用,您可以使用输入和输出制作一个组件,然后您可以将代码相互化

因此,在创建新组件之前,您必须问自己两个问题

  • 我会在其他页面中重用此组件吗

  • 该组件是否需要位于特定的URL中


  • 使每个页面成为一个组件的目标是使路由器的使用变得容易

    这实际上取决于您的应用程序,如果您有一个部分在同一页面中被多次使用,您可以使用输入和输出制作一个组件,然后您可以将代码相互化

    因此,在创建新组件之前,您必须问自己两个问题

  • 我会在其他页面中重用此组件吗

  • 该组件是否需要位于特定的URL中

  • 你的计划被称为“大爆炸重写”,这很普遍,但这是个坏主意

    在大多数情况下,是大爆炸方法赢得了争论

    但是,通过让它成为一个大爆炸的版本,你最大限度地提高了当你到最后的时候你会落后于计划的机会,因此你最大限度地提高了你没有花足够时间准备的机会。这对你和你的客户来说都是一个糟糕的时刻

    不幸的是,也许是由于人性中固有的某些东西,对于大型重写项目来说,这种场景是陈词滥调

    -

    成功升级的关键之一是增量升级,方法是在同一应用程序中并排运行两个框架,并将AngularJS组件逐个移植到AngularJS。这使得在不中断其他业务的情况下升级大型和复杂的应用程序成为可能,因为这些工作可以协同完成并在一段时间内分散。Angular中的
    升级
    模块旨在实现无缝增量升级

    有关详细信息,请参阅

    你的计划被称为“大爆炸重写”,这很常见,而且是个坏主意

    在大多数情况下,是大爆炸方法赢得了争论

    但是,通过让它成为一个大爆炸的版本,你最大限度地提高了当你到最后的时候你会落后于计划的机会,因此你最大限度地提高了你没有花足够时间准备的机会。这对你和你的客户来说都是一个糟糕的时刻

    不幸的是,也许是由于人性中固有的某些东西,对于大型重写项目来说,这种场景是陈词滥调

    -

    成功升级的关键之一是增量升级,方法是在同一应用程序中并排运行两个框架,并将AngularJS组件逐个移植到AngularJS。这使得在不中断其他业务的情况下升级大型和复杂的应用程序成为可能,因为这些工作可以协同完成并在一段时间内分散。Angular中的
    升级
    模块旨在实现无缝增量升级

    有关详细信息,请参阅


    重写您的高级项目会给您带来什么好处?对我来说,这听起来像是很多不必要的痛苦。我的建议是完成这个项目,然后从头开始学习。但这只是一个人的意见。该项目目前完全用AngularJS 1.4编写。对于我的高级项目,我的任务是将其迁移到Angular 9。整个应用程序都完成了,我只需要在Angular 9中重写它。抱歉搞混了。啊,我不知道这是任务的一部分。像这样一个开放式的问题,你在这里不会有太大的吸引力。大约有100个博客标题为“从AngularJS迁移到AngularX时我学到了什么”。这将是一个很好的起点。我希望你正在使用版本控制…重写你的高级项目有什么好处?对我来说,这听起来像是很多不必要的痛苦。我的建议是完成这个项目,然后从头开始学习。但这只是一个人的意见。该项目目前完全用AngularJS 1.4编写。对于我的高级项目,我的任务是将其迁移到Angular 9。整个应用程序都完成了,我只需要在Angular 9中重写它。抱歉搞混了。啊,我不知道这是任务的一部分。像这样一个开放式的问题,你在这里不会有太大的吸引力。大约有100个博客标题为“从AngularJS迁移到AngularX时我学到了什么”。这将是一个很好的起点。我希望您正在使用版本控制…截至目前,应用程序尚未发布,因此在迁移期间,我们不担心停机。我听说,如果使用混合方法,那么应用程序的一部分仍然会卡在AngularJS框架内。你的建议是什么?迁移到1.5,然后在整个过程中使用ng升级