这是将jQuery与AngularJS一起使用的好做法吗
Is that a good practice to use jQuery with AngularJS?
我已经使用jQuery很多年了。现在,我想学习一些新的东西来建立单页网站。我选择了AngularJS。
目前我想知道将jQuery与AngularJS一起使用是否是个好主意?
示例。
我在AngularJS控制器中有类似的东西:
$http.post('ajax/gettimeline', { page: page }).success(function (data) {
$rootScope.loading = false;
// Here I need to built dynamic html with getting and setting
// dynamic elements size, positions, change their properties, etc.
}
});
使用jQuery构建那些动态html元素是一项简单的任务。但是AngularJS看起来会很痛苦。
如果有任何建议,我们将不胜感激。
感谢
不,这不是一个好主意。你在Angular应用程序中使用jQuery编码实践,这会让你头疼——这一次是因为这些实践违背了Angular的精神,也因为你无法从Angular中获益。
Angular开发中最重要的部分之一是:永远不应该从控制器中操作DOM。这在jQuery中很好,但在Angular中,你应该修改你的模型,让Angular渲染它。Angular有一个内置的模板机制,你应该使用它来加载HTML片段。如果您需要动态创建HTML,您应该在指令中这样做。其他一切都违反了"关注点分离"原则。
如果您使用jQuery或原生DOM方法来操作输入设置或修改DOM,那么您将与Angular展开一场斗争,这将导致许多难以调试的错误。Angular的一个要点是双向的如果您坚持自己将数据绑定到HTML,那么数据绑定不是一个有用的功能。也许其中一个更简单的模板库,比如小胡子或敲除,会更符合你的喜好?
要获得Angular的好处,就意味着放弃一些久经考验的实践,学习内置指令,尤其是ng-repeat
、ng-if
、ng-class
、ng-click
和ng-change
,也许还有Angular UI之类的东西。
Big NO。将jQuery与angular.js一起使用不是一个好主意。jQuery做不同的事情,angular.jss做不同的事。jQuery处理DOM并动态添加、追加、移除元素。另一方面,angular.js只是处理模型数据,但您可以使用angular.js内置的jqlite。
- 将jQuery UI Timepicker Addon与React一起使用
- 将FormParams与Jersey和jQuery一起使用
- 将Jquery与wordpress主题一起使用
- 存储数据的最佳方式是什么,以便与jquery一起使用
- 将jQuery.css()与变量一起使用
- 如何将jquery ui与requirejs一起使用
- 注入的元素和jQuery脚本.如何让他们一起工作
- 有条件地创建ajax url参数以与jQuery Validate一起使用
- 在使用 Django 静态文件时动态设置映像时,只有绝对路径才能与 jquery 一起使用
- 使一组对象与 jQuery 一起拖动
- 将 jQuery UI 日期选择器与异步 AJAX 请求一起使用
- 通过 jQuery Find and Replace 将文本 URL 与 标记包装在一起
- 将jQuery动画与angular的ngAnimate一起使用
- 将 jQuery trigger() 与 hoverIntent 一起使用
- Jquery 工具提示未随 AJAX 数据加载一起显示
- Jquery animate 不能与 IE 一起使用 - 什么也没发生
- jQuery脚本不想一起工作
- While循环与jquery中的某些数学函数一起崩溃
- 合并多个画布在一个单一的DIV一起- JQuery
- 如何让两个框架拖在一起?(jQuery)