前端之家收集整理的这篇文章主要介绍了
AngularJS初始化静态模板详解,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
AngularJS可以通过ng-app来自动初始化模块,也可以通过angular.bootstrap(document,[module])手动启动应用,不管用哪种方法,应用启动后,动态往dom树里面添加的dom元素,无法执行angular指令,即无法通过ng-model、ng-click给动态添加的dom元素绑定数据和事件,怎么办?
动态添加dom元素的场景非常常见,如点击某页面上修改用户资料的按钮,发送ajax请求去查询用户资料,然后通过模板引擎将事先写在页面里的静态模板编译成HTML字符串,最后将HTML字符串append到页面显示出来,一般情况下我们会这样做:
demo
<
Meta charset="utf-8"/>
var app = angular.module('app',[]);
app.controller('myCtrl',['$scope','$compile',function(scope,$compile){
scope.valchange = function(){
console.log('value change')
}
scope.edit = function(){
//假设这是ajax返回的数据
scope.username = 'wangmeijian';
scope.password = '000000';
$(".contani").html(myTmpl.innerHTML);
}
}])