UI 프레임 LumX에서 Search-Filter을 사용하려고하는데 이는 전통적인 방식으로 사용되지 않는다는 것을 인정합니다.AngularJS - 타사 지시문의 컨트롤러에 액세스
필터가 작동하는 방법은 돋보기 버튼 opens
을 누르는 것입니다. 컨트롤러의 openInput
메서드를 호출합니다. 마우스를 클릭하면 닫힙니다.
toolbar__label span
을 클릭하면 입력 한 내용을 opening
및 closing
으로 확장하고 싶지만, 각도 지식은 아직까지 최고 수준이 아닙니다. 당신은 GitHub의 링크를 열면
<div class="toolbar" opensearch>
<span class="toolbar__label fs-title ml black__text" >{{ "content.search.tip" | translate }}</span>
<div class="toolbar__right">
<lx-search-filter lx-width="400" lx-closed="true" >
<input type="text" ng-model="vm.searchFilter.third">
</lx-search-filter>
<button class="btn btn--l btn--black btn--icon" lx-ripple>
<i class="mdi mdi-apps"></i>
</button>
</div>
</div>
이 지시어 자체의 ng-click
내 질문은
ng-click="lxSearchFilter.openInput()"
처럼
내 HTML 내가 외부에서이 lxSearchFilter
컨트롤러에 액세스 할 수있는 방법을 찾습니다 lx-search-filter
지시문?
opensearch
와 내가 할 수있는 일의 좋은 오래된 JQuery와 방법을 사용하여 추가 같은 :
link: function(scope, element) {
element.bind('click', function(e) {
var btn = angular.element(e.target).parent().find('button')[0];
if (!isOpen) {
isOpen = true;
angular.element(btn).trigger('click');
}
return false;
});
이 두 가지주의 사항과 작업을 수행합니다
1. After a single open/close action I cannot reopen it
2. It's not the Angular way??
그래서 다시를 내 질문은 lx-search-filter 지시문 외부에서이 lxSearchFilter 컨트롤러에 어떻게 액세스 할 수 있습니까?
나는 그것을 더 잘 표현해야한다고 생각한다. lxSearchFilter.openInput() 함수를 트리거하고 수정할 필요가 없습니다. 내 지시문에서 어떻게 작동시킬 수 있습니까? –
@ SamHammamy 업데이트 답변 – Icycool
@lcycool 와우! 인상적. 나는 오늘 아침을 구현하고 완벽하게 작동합니다! 대단히 감사합니다 –