Angularjs 如何将自包含的Angular 2应用程序嵌入Angular 1应用程序中

Angularjs 如何将自包含的Angular 2应用程序嵌入Angular 1应用程序中,angularjs,integration,angular,Angularjs,Integration,Angular,注意:我没有升级ng1应用程序。我正在尝试让ng1和ng2应用程序同时运行(或者说嵌套) 下面的html大致显示了我们如何同时在页面上使用两个框架: 角度1:整个页面由角度1控制。但是我们已经使用NG非绑定来告诉NG1应用程序忽略页面中间的div。

注意:我没有升级ng1应用程序。我正在尝试让ng1和ng2应用程序同时运行(或者说嵌套)

下面的html大致显示了我们如何同时在页面上使用两个框架:

  • 角度1:整个页面由角度1控制。但是我们已经使用NG非绑定来告诉NG1应用程序忽略页面中间的div。

棱角1号东西
棱角1号东西

这个问题本身可能会引发数千个其他问题。完全回答这个问题并不容易,因为您将同时讨论两个主要的基于MVC的体系结构(Angular1和Angular2)

请参见如何在angular1中使用angular2。成功地在angular1应用程序中引导angular2应用程序

了解如何实现angular1体系结构非常重要。但如果你是安格拉1&2型的人,你可能会找到自己的方法

Index.html

<body ng-app="app" ng-controller="appController">
    <header>{{myValue}}</header>   //belongs to angular1

    <div ng-non-bindable>
      <my-app></my-app>

      <!-- angular 2 app bootstrapping -->
    </div>

    <footer>Angular 1 Stuff</footer>

    <script>
        var app=angular.module("app",[]);

        app.controller("appController",function($scope){
          $scope.myValue="Nyks";
        })
    </script>

{{myValue}}//属于angular1
棱角1号东西
var-app=angular.module(“app”,[]);
app.controller(“appController”,函数($scope){
$scope.myValue=“Nyks”;
})

不可能将两个Angular 1应用程序相互嵌套,我只能想象,尝试使用Angular 2实现这一点会很有挑战性或不可能。这就是说,angular 1不使用
requirejs
,因此如果与该库冲突,那么它与angular 1应用程序的编写方式有关,而与angular本身无关。距离未来很遥远,但你能做到这一点吗?不,我从未让它工作过。抱歉。如果你能做到这一点,我想问题更多的是我们如何使用requirejs,以及我们的Angular 2输出如何访问全局require函数。我不明白你为什么强调requirejs。我相信你的A1已经被使用了,但是它和A2有什么关系呢?Requirejs与angular2无关。因为我原来的ng1应用程序使用Requirejs,而我的新ng2应用程序使用webpack/typescript捆绑JS。requirejs和输出的bundle都依赖于一个全局“require”函数,但它们使用的函数不同,因此会发生冲突。