我有一些使用 jQuery 构建的应用程序,现在我想使用 angularjs 对我的应用程序做一些魔术。
我当前的应用在做什么?第一个。- 它使用 jquery 创建一些 DOM 元素:
<html>
<body>
<div id="wrapper"></div>
<script>
for(var i = 0; i < 20; i++) {
var $elem = $('<div>')
.attr('id', 'box-' + i)
.appendTo('#wrapper');
}
</script>
</body>
</html>
然后,我进行了一些 AJAX 调用,并基于我知道的返回的 JSON,我想创建一些新的 DOM 元素(通过 jquery 和车把),并将其附加到 $("#elem-2");
$.get('something', function(response){
var elemInstance = new MyElement(response); //function MyElement handles my object creation based on the response.
var $elem = elemInstance.render(); //return new jQuery Object, like: return $("<div>");
$elem.appendTo('#wrapper #box-2');
});
这很好用,但是因为这个动态创建的 $elem 及其“控制器”( MyElement )非常复杂并且需要经常重新渲染,所以我很想使用 angular 来控制以这种方式创建的所有元素。
所以,问题是:我可以在角度的OOP中拥有类似类的东西并基于这个类创建新对象吗?我可以在运行时创建角度控制器吗?或者也许ma approch是完全错误的?