将两个不同版本的 AngularJS 加载到一页中会遇到什么问题?
显然,这似乎是一件愚蠢的事情,但是我的用例是使用 AngularJS 的页面,该页面结合了第三方组件,并拖入了其首选的 AngularJS
版本。
更新:
找到一些信息:
https://groups.google.com/forum/#!msg/angular/G8xPyD1F8d0/u1QNDNvcwW4J
https://github.com/angular/angular.js/pull/1535
Angular确实不准备与其他版本共存。但这是可行的。
首先加载角度库,并确保在加载之前window.angular
为空:
<script src="vendor/angular/1.2.0/angular.min.js"></script>
<script src="app/app2.js"></script>
<script>
var angular2 = angular;
window.angular = null; // here we're cleaning angular reference
</script>
<script src="vendor/angular/1.0.5/angular.js"></script>
<script src="app/app1.js"></script>
<script>
var angular1 = angular;
</script>
请注意,应在加载角度库后立即加载每个版本的angular的每个应用程序(app1.js
,app2.js
)。
应用程序的每个JavaScript文件都应包含在自执行函数中(function(angular) { ... })(angular)
。看下面的例子app2.js
:
(function(angular) {
angular.module('myApp2', []).
controller('App2Ctrl', function($scope) {
$scope.$watchCollection('[a, b, c]', function() {
console.log(angular.version.full);
});
});
})(angular);
请注意,我在这里使用$watchCollection
的仅适用于angular1.2.x。通过为每个文件提供匿名函数的作用域,您将迫使应用程序访问angular
属性而不是window.angular
属性。
最后,您必须使用手动方法来引导应用程序:
<body>
<div id="myApp1" ng-controller="App1Ctrl">
</div>
<div id="myApp2" ng-controller="App2Ctrl">
</div>
<script>
angular1.bootstrap(document.getElementById('myApp1'), ['myApp1']);
angular2.bootstrap(document.getElementById('myApp2'), ['myApp2']);
</script>
</body>
这里工作的家伙。运行后,请检查控制台窗口以查看所用角度的记录版本。
我有两个不同版本的spring配置,涉及两个不同的java版本,即Java8和Java11 项目结构类似于: pom.xml: 那么,有没有什么方法可以使用两个类而不导致构建失败呢? 此外,我不能使用配置文件和提及类要在特定的配置文件中使用。
问题内容: Python网站上是否有官方文档,内容涉及如何在Linux的同一台计算机上安装和运行多个版本的Python? 我可以找到成千上万的博客文章和答案,但是我想知道是否有“标准”的官方方式来做到这一点? 还是全部取决于操作系统? 问题答案: 我认为这是完全独立的。只需安装它们,然后即可使用命令例如和。链接到您要用作默认值的那个。 无论如何,所有库都位于单独的文件夹中(以版本命名)。 如果要手
问题内容: 我正在从事的项目需要在客户的网页上使用jQuery。客户将插入我们将提供的代码块,其中包括一些在-created 中构建窗口小部件的元素。如果他们还没有使用最新版本的jQuery,则还可能(最有可能)包含Google托管版本的jQuery。 问题在于某些客户可能已经安装了旧版本的jQuery。尽管如果它至少是一个相当新的版本可能会起作用,但是我们的代码确实依赖jQuery库中最近引入的
嗨,我试图使用chartjs可以在这个链接中找到www.chartjs.org 我试图用样本代码在同一页上画两个图表 我用两个不同的ID创建了两个不同的div 就像这样 那么在包括这一行之后: 我以这种方式创建了第一个图表: 第二张图表是这样的: 两个图表使用的数据与样本相同,所以没有什么变化,但如果我只画一个图表本身,它的工作原理很好,如果我把两个图表在同一时间,我只得到饼图 你能告诉我问题在哪
问题内容: 我有一个与第三方供应商VENDOR1的库X版本libfoo静态链接的应用程序。它还与来自第三方供应商VENDOR2的动态(共享)库libbar链接,该库静态链接了VENDOR1的libfoo版本Y。 因此libbar.so包含libfoo.a的Y版本,而我的可执行文件包含libfoo.x的X版本。libbar仅在内部使用libfoo,并且没有从我的应用程序传递到libbar的libfo
问题内容: 我的计算机上同时安装了Python 3.3和Python 2.7。python 3.3工作正常,但是当我尝试使用python 2.7运行某些程序时,它仍然引用python 3.3。 例如:如果输入,它将在3.3上运行并正常工作,但是如果输入,则会出现此错误: 注意:我已将Python 2.7和3.3 .exe分别重命名为python27.exe和python33.exe。 任何帮助将不