[javascript] 한 번의 클릭으로 많은 기능을 추가하는 방법은 무엇입니까?

나는 이것을 실행하는 방법을 찾고 있었지만 지금까지 관련된 것을 찾을 수는 없다.

<td><button class="btn" ng-click="edit($index) open()">Open me!</button></td>

현재 내 JS 코드 :

$scope.open = function () {
  $scope.shouldBeOpen = true;
};

$scope.edit = function(index){

  var content_1, content_2;
      content_1 = $scope.people[index].name;
      content_2 = $scope.people[index].age;

  console.log(content_1);
};

한 번의 클릭으로 두 개의 함수를 호출하고 싶습니다. angularJS에서 어떻게 할 수 있습니까? 여러 클래스를 추가 할 때 CSS와 같이 간단하다고 생각했지만 그렇지 않습니다.



답변

두 가지 옵션이 있습니다.

  1. 두 방법을 모두 감싸는 세 번째 방법을 만듭니다. 여기서 장점은 템플릿에 로직을 적게 넣는다는 것입니다.

  2. 그렇지 않으면 ng-click에 2 개의 통화를 추가하려면 ‘;’ 이후 edit($index)이 같은

    ng-click="edit($index); open()"

여기를 참조하십시오 : http://jsfiddle.net/laguiz/ehTy6/


답변

‘;’를 사용하여 여러 함수를 호출 할 수 있습니다.

ng-click="edit($index); open()"


답변

많은 사람들이 (클릭) 옵션을 사용하므로 이것도 공유 할 것입니다.

<button (click)="function1()" (click)="function2()">Button</button>


답변

이 시도:

  • 함수 모음 만들기
  • 컬렉션의 모든 함수를 반복 실행하는 함수를 만듭니다.
  • HTML에 함수 추가
array = [
    function() {},
    function() {},
    function() {}
]

function loop() {
    array.forEach(item) {
        item()
    }
}

ng - click = "loop()"


답변

아래를 따르십시오

ng-click="anyFunction()"

anyFunction() {
   // call another function here
   anotherFunction();
}


답변

ng-click "$watch(edit($index), open())"


답변