AngularJS ES6 ui-grid 지시문 범위, ng-click이 작동하지 않음

Thorsten Rintelen

angularJS 및 ES6에 체인 지시문이 있으며 ui-grid를 사용하고 싶습니다. 그리드는 올바른 열과 데이터로 표시됩니다.

그러나 ng-click은 cellTemplate에서 작동하지 않습니다. 아무 반응이 없습니다. 또한 console.log (grid)로 그리드 객체를 확인하려고 시도하고 그리드가 정의되지 않았습니다.

누가 cellTemplate을 사용하여 openDetail 메서드를 호출 할 수 있습니까?

export default function ChainsDirective() {
    class ChainsDirective {

        /*@ngInject*/
        constructor(chainsService, $state) {
            this.chainsServiceLoadChains = chainsService.loadChains.bind(chainsService);
            this.gridOptions = {
                enableColumnMenus: false,
                columnDefs: [
                    {
                        name: 'id',
                        visible: false
                    },
                    {
                        name: 'name',
                        displayName: 'Kette',
                        cellTemplate: '<div class="ui-grid-cell-contents"><a onclick="console.log(grid)" ng-click="grid.appScope.openDetail(row.entity.id)">{{row.entity.name}}</a></div>'
                    }
                ]
            };
            this.$stateGo = $state.go.bind($state);
            this.fetch(); // best practice initiales laden in einer Funktion zu kapseln
        }

        /**
         * @param int chainId
         */
        openDetail(chainId) {
            this.$stateGo('chainDetail', {chainId})
        }

        fetch() {
            return this.chainsServiceLoadChains().then(data => {
                this.gridOptions.data = data;
            })
        }
    }

    return {
        restrict: 'E',
        template: '<div ui-grid="chains.gridOptions" external-scopes="$scope" class="grid"></div>',
        scope: {},
        bindToController: {},
        controller: ChainsDirective,
        controllerAs: 'chains'
    }
}
스테판

ui-grid 지시문을 사용한 적이 없습니다. 그러나 "controller as"구문으로 선언했기 때문에 이름으로 컨트롤러에 액세스해야하는 것 같습니다.

따라서 ng-click이름으로 범위의 컨트롤러를 참조해야합니다 chains.

ng-click="grid.appScope.chains.openDetail(row.entity.id)"

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Angularjs ui-grid 셀 템플릿에서 ng-click이 작동하지 않습니다.

분류에서Dev

AngularJS ng-click이 범위에서 함수를 호출하지 않음

분류에서Dev

Angularjs 범위가 작동하지 않음

분류에서Dev

AngularJs ng-if 지시문이 작동하지 않습니까?

분류에서Dev

AngularJS 지시문 범위가 업데이트되지 않음

분류에서Dev

AngularJS 지시문 범위가 업데이트되지 않음

분류에서Dev

ng-click이 작동하지 않는 AngularJS-ng-show

분류에서Dev

지시문에서 ng-model을 정의한 후 Angularjs ng-model이 작동하지 않음

분류에서Dev

ng-grid의 UI-Bootstrap Datepicker가 enableCellEditOnFocus = true로 작동하지 않음

분류에서Dev

ng-click 이벤트 후 지시문 범위가 업데이트되지 않음

분류에서Dev

ng-click이 AngularJS에서 작동하지 않습니다.

분류에서Dev

AngularJS 지시문 범위가 템플릿을 업데이트하지 않음

분류에서Dev

AngularJs : ng-click이 드롭 가능한 지시문과 함께 작동하지 않습니다.

분류에서Dev

angularjs 및 ng-bind-html이 제대로 작동하지 않음

분류에서Dev

angularjs 지시문이 작동하지 않음 (이상한 문제)

분류에서Dev

AngularJs 지시문이 다른 지시문의 범위를 업데이트하지 않음

분류에서Dev

AngularJS에서 작동하지 않는 ng-click의 ng-show

분류에서Dev

AngularJS : 범위 필터가 작동하지 않음

분류에서Dev

angularjs 1.2를 1.3 지시문 ng-repeat 범위 문제로 업그레이드

분류에서Dev

AngularJS "ng-repeat | filter : ..."가 예상대로 작동하지 않음 (데이터가 표시되지 않음)

분류에서Dev

AngularJS / ui-router : $ state.go가 ng-click 내에서 작동하지 않습니다.

분류에서Dev

Angular UI Grid가 셀의 지시문을 업데이트하지 않음

분류에서Dev

ng-click이 작동하지 않음, 클릭시 이미지 교체 시도

분류에서Dev

시트 / 범위 선택 (결합)이 작동하지 않음

분류에서Dev

AngularJS-범위 데이터가 표시되지 않음

분류에서Dev

AngularJS-ng-click이 자식 요소에서 작동하지 않습니다.

분류에서Dev

ng-click의 Angularjs 표현식이 Android에서 작동하지 않습니다.

분류에서Dev

ng-click의 Angularjs 표현식이 Android에서 작동하지 않습니다.

분류에서Dev

AngularJS 지시문 범위 함수가 호출되지 않음

Related 관련 기사

  1. 1

    Angularjs ui-grid 셀 템플릿에서 ng-click이 작동하지 않습니다.

  2. 2

    AngularJS ng-click이 범위에서 함수를 호출하지 않음

  3. 3

    Angularjs 범위가 작동하지 않음

  4. 4

    AngularJs ng-if 지시문이 작동하지 않습니까?

  5. 5

    AngularJS 지시문 범위가 업데이트되지 않음

  6. 6

    AngularJS 지시문 범위가 업데이트되지 않음

  7. 7

    ng-click이 작동하지 않는 AngularJS-ng-show

  8. 8

    지시문에서 ng-model을 정의한 후 Angularjs ng-model이 작동하지 않음

  9. 9

    ng-grid의 UI-Bootstrap Datepicker가 enableCellEditOnFocus = true로 작동하지 않음

  10. 10

    ng-click 이벤트 후 지시문 범위가 업데이트되지 않음

  11. 11

    ng-click이 AngularJS에서 작동하지 않습니다.

  12. 12

    AngularJS 지시문 범위가 템플릿을 업데이트하지 않음

  13. 13

    AngularJs : ng-click이 드롭 가능한 지시문과 함께 작동하지 않습니다.

  14. 14

    angularjs 및 ng-bind-html이 제대로 작동하지 않음

  15. 15

    angularjs 지시문이 작동하지 않음 (이상한 문제)

  16. 16

    AngularJs 지시문이 다른 지시문의 범위를 업데이트하지 않음

  17. 17

    AngularJS에서 작동하지 않는 ng-click의 ng-show

  18. 18

    AngularJS : 범위 필터가 작동하지 않음

  19. 19

    angularjs 1.2를 1.3 지시문 ng-repeat 범위 문제로 업그레이드

  20. 20

    AngularJS "ng-repeat | filter : ..."가 예상대로 작동하지 않음 (데이터가 표시되지 않음)

  21. 21

    AngularJS / ui-router : $ state.go가 ng-click 내에서 작동하지 않습니다.

  22. 22

    Angular UI Grid가 셀의 지시문을 업데이트하지 않음

  23. 23

    ng-click이 작동하지 않음, 클릭시 이미지 교체 시도

  24. 24

    시트 / 범위 선택 (결합)이 작동하지 않음

  25. 25

    AngularJS-범위 데이터가 표시되지 않음

  26. 26

    AngularJS-ng-click이 자식 요소에서 작동하지 않습니다.

  27. 27

    ng-click의 Angularjs 표현식이 Android에서 작동하지 않습니다.

  28. 28

    ng-click의 Angularjs 표현식이 Android에서 작동하지 않습니다.

  29. 29

    AngularJS 지시문 범위 함수가 호출되지 않음

뜨겁다태그

보관