jQuery方法的JS等价物
我目前正在从我的jQuery方法的JS等价物,jquery,angularjs,Jquery,Angularjs,我目前正在从我的AngularJS项目中删除jQuery依赖项,并在我的代码库中遇到以下代码作为规范的一部分: beforeEach(inject(function($rootScope, _$compile_) { scope = $rootScope; $compile = _$compile_; var domElement = '<my-element class="my-class"' + 'ng-class="{' + 'open: myFunction
AngularJS
项目中删除jQuery
依赖项,并在我的代码库中遇到以下代码作为规范的一部分:
beforeEach(inject(function($rootScope, _$compile_) {
scope = $rootScope;
$compile = _$compile_;
var domElement = '<my-element class="my-class"' + 'ng-class="{' + 'open: myFunction().isOpen === true}"+></my-element>';
element = angular.element(domElement);
}));
function createComponent() {
$compile(element)(scope);
scope.$digest();
return element.find('my-element');
}
beforeach(注入(函数($rootScope,$compile){
scope=$rootScope;
$compile=\$compile;
var domElement='';
元素=角度元素(DomeElement);
}));
函数createComponent(){
$compile(元素)(范围);
范围。$digest();
return元素。find('my-element');
}
我想知道
angular.element(domeElement)的JS等价物是什么
和返回元素.find('my-element')代码>部分代码。我知道angular.element
只是jQuery
的包装器,但试图使用document.querySelector
(或document
上的其他方法)没有任何帮助。实际上没有任何直接的javascript等价于angular的angular.element
和element.find
最密切相关的可能分别是document.querySelector
和array.prototype.find
。然而,angular提供的方法与普通javascript提供的方法之间有一个小但重要的区别,很多浏览器都支持angular方法,而普通javascript方法可能无法支持。原因可能是document.querySelector
返回简单dom元素但是JQuery/Angular返回它的一个修改/包装的表示形式,这一行代码不是选择html元素,而是创建它们。return语句从已创建元素的集合中选择一个元素,但它实际上不需要。。。只有一个元素已经是当前元素了。