我需要将一个完整的遗留页面加载到我们的新页面中,包括AJAX的一些AngularJS。
起初它根本没用,我只是得到了简单的AngularJS标记,例如。
Rank ID
{{$index+1}} {{player.playerid}}
但后来我找到this stackoverflow thread this demo,plnkr-Demo使用$compile
并且对于线程中的给定示例完全正常。所以我尝试使用我的代码运行它,现在我收到以下错误消息
错误:[ng:areq]参数' HighscoreCtrl'不是一个功能,未定义
我使用$.get
来获取整个Angular-Page并过滤包含所有内容(角度标记,模块和控制器)的div
的响应,然后将其放入{{1 }}
jQuery get:
div#mainContent
正文包含:
$.get(link, function(data) {
var temp = $(data);
var links = temp.filter('link');
var scripts = temp.not('div').not('link').not('meta').not('title');
var body = temp.filter('#test123');
console.log(body);
$("#mainContent").html(
$compile(
body
)($scope));
$scope.$apply();
});
在编译标记之前,我已经尝试拆分角度部分并包含模块和控制器,但这也没有用。
我尝试做的甚至可能吗?
这是我为测试代码而创建的一个简单示例: {{3}}
答案 0 :(得分:0)
看起来你没有为你的控制器包含js文件,因为你只是拉入了身体。脚本引用可能在head部分。您需要在正文中包含指向该js文件的链接,或者将其重新添加回来。