Javascript 如何在angularJS中使用$document服务?

Javascript 如何在angularJS中使用$document服务?,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,一般来说,我对JS中的angularJS非常陌生,对于使用$document我有点困惑。据我所知,$document公开了一些JQuery函数。因此,当我要删除与选择器匹配的元素时,我会执行以下操作: $document.remove('.someClassSelector'); 元素应该从DOM树中删除,对吗?如果不是,那么正确的方法是什么来操作DOM元素及其css呢 AngularJS嵌入了Jquery(jqLite)的lite版本 如果只想使用jqLite(不嵌入jquery),可以

一般来说,我对JS中的angularJS非常陌生,对于使用$document我有点困惑。据我所知,$document公开了一些JQuery函数。因此,当我要删除与选择器匹配的元素时,我会执行以下操作:

$document.remove('.someClassSelector');  

元素应该从DOM树中删除,对吗?如果不是,那么正确的方法是什么来操作DOM元素及其css呢

AngularJS嵌入了Jquery(jqLite)的lite版本

如果只想使用jqLite(不嵌入jquery),可以执行以下操作删除该元素:

angular.element(yourElement).remove()
$document
是window.document的jqLite快捷方式

请参阅:

隐藏/显示DOM元素的更常见的“角度方式”是在HTML中使用and/or指令--“声明”它们(因此页面上的以下语句:

Angular是建立在声明性代码更好的信念之上的 而不是在构建UI和将软件组件连接在一起时必须这样做

类似地,要添加/删除CSS类,请以声明方式使用该指令。对模型的更改(即$scope属性)应驱动CSS类的隐藏/显示和添加/删除

如果您需要更复杂的东西,可以将DOM操作放到自定义中,通常在link函数中

在jQuery世界中,我们考虑触发DOM操作代码的事件(例如,对某个元素调用remove())。在AngularJS世界中,我们想考虑触发模型更改的事件,然后根据声明性HTML自动触发UI更改(例如,ng单击设置一个$scope属性,该属性与元素上的ng显示相关联)。我仍在调整思路


对于大多数AngularJS应用程序,您不需要使用$document。

啊,对不起,误解了这个问题。AngularJS嵌入了Jquery的lite版本(Jquery lite)。如果您只想使用Jquery lite(不嵌入Jquery),您可以这样做:angular.element(yourElement).remove()$document是一个jquery lite窗口的快捷方式。document请看:是的,这正是我要问的。请更新您的答案以接受它。Angular Documents不是很清楚,或者至少对像我这样的JS新手来说不是。这在解释
$document
的目的时是正确的。但是,正如另一张海报所指出的,它对我们更好对于这类事情,e
ng show
ng hide
ng class