在具有服务器呈现页面的混合环境中运行Angular

在具有服务器呈现页面的混合环境中运行Angular,angular,Angular,在我参与的一个项目中,我们有一个MVC5应用程序。我们希望使用Angular 4将复杂的前端javascripts组件构建到此站点。同时仍然能够以旧式视图渲染其他部分 我的想法是,我将能够为不同的区域创建一个具有不同模块的应用程序,然后能够选择在特定位置渲染其中的哪一个。但在所有的例子中,我看到人们都在创建SPA应用程序,而不是构建单独的组件或模块,这些组件或模块都是由他们自己呈现的 我经常使用Angular JS,这允许您基本上将ng应用程序标记添加到主体中,然后在您想要的位置添加Angula

在我参与的一个项目中,我们有一个MVC5应用程序。我们希望使用Angular 4将复杂的前端javascripts组件构建到此站点。同时仍然能够以旧式视图渲染其他部分

我的想法是,我将能够为不同的区域创建一个具有不同模块的应用程序,然后能够选择在特定位置渲染其中的哪一个。但在所有的例子中,我看到人们都在创建SPA应用程序,而不是构建单独的组件或模块,这些组件或模块都是由他们自己呈现的

我经常使用Angular JS,这允许您基本上将ng应用程序标记添加到主体中,然后在您想要的位置添加Angular控制器,您可以轻松地将其与服务器呈现的页面混合使用

我发现有人在讨论同一件事,但似乎没有人能找到解决办法,他们所包含的Plunk不再有效


如何使用新的Angular 2+?谷歌Angular元素。也许有一天它会像一个CLI命令一样容易地将ng组件包装为自定义元素。但就目前而言,Angular可能不是整合到大型服务器渲染应用程序中最容易的

我在类似情况下采取的一种方法是,我构建了一个新的NG SPA应用程序和嵌入式遗留服务器视图,这些视图在iframes中也使用angularjs 1.x进行了丰富。你读对了,伊夫拉姆!:D它只是起作用。我可以逐渐用新的角度部分取代旧的服务器视图,因此最终该应用程序将是一个纯粹的角度spa

也就是说,有一个FrameComponent路由,它接受URL的其余部分,并将其设置在iframe的src中,因此任何旧URL只需在新应用程序中预先添加URL即可“正常工作”。添加了一些参数,例如服务器视图跳过呈现菜单等