我使用AngularJS 1.2.9构建了一个站点,该站点通过CMS添加到客户端的网站中作为块体。我无法控制页面的标题,他们正在使用旧版本的jQuery(1.6)。
因为Angular默认使用jQuery,如果它检测到它被加载到DOM中,我在编译链接函数等中的元素引用会出现element not defined
错误。
我需要找到一种方法来阻止Angular使用jQuery,而只是默认使用默认的jqLite。我知道一个奇怪的请求,但我对头文件没有任何控制权,而且页面会为所有选择器代码抛出错误。我在AngularJS docs for 1.2
中找到了这个Angular 1.2仅适用于jQuery 1.7.1或更高版本。
所以我认为这个错误是由加载的旧版1.6 jQuery引起的。
所以我的问题是:
有没有办法在bootstrapping期间手动告诉AngularJS NOT不要使用jQuery?
答案 0 :(得分:1)
不确定这是否对你有用,但它在过去解决了类似的问题。
<script>
var backup = {
$: window.$,
jQuery: window.jQuery
};
delete $;
delete jQuery;
</script>
<script src="path/to/Angular.js"></script>
<script>
var $ = backup.$;
var jQuery = backup.jQuery;
delete backup;
</script>