我试图在新的html内容中添加一个控制器,该内容将动态添加到现有的dom中,但我的范围未定义。这样做的最佳方式是什么?我是Angular的新人。
对不起,这是我的代码:
var angularScript = document.createElement('script');
angularScript.setAttribute('type','text/javascript');
angularScript.setAttribute('src','https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js');
document.head.appendChild(angularScript);
jQuery('body').append("<section id='custFA'><div id='getTable' data-ng-app='custom' data-ng-controller='customController' style='overflow-y: auto !important;position:absolute; width: 300px; height: 200px; top:100px; left: 200px;'><button id='runCust' data-ng-click='codeRun()' style='top: 57px; left: 120px;'>Run</button></div></section>");
I'm inserting module and controller scripts as well, and the code in it:
Module:
setTimeout(function angularDefined(){
if(angular){
window.app = angular.module("custom",[]);
console.log("angular");
}
else{
setTimeout(angularDefined,1000);
}
},1000);
controller:
function appDefined(){
if(window.app){
window.defined=true;
console.log("appDefined");
app.controller('customController', ['$scope', function($scope) {
$scope.codeRun=function(){
console.log("check");
}
}]);
}
else{
setTimeout(appDefined,1000);
}
};
appDefined();
由于
答案 0 :(得分:0)
您需要先创建一个控制器..文档:
var myApp = angular.module('myApp',[]);
myApp.controller('GreetingController', ['$scope', function($scope) {
$scope.greeting = 'Hola!';
}]);
在你的html中:让你的视图知道要使用哪个控制器。在该div内部,您可以访问$ scope
上的任何变量<div ng-controller="GreetingController">
{{ greeting }}
</div>