Вызов директивы по клику

0

сначала я хочу извинения за свой английский, но я постараюсь быть конкретным, как могу.

Во-вторых, возможно, решение для этого прост, но я застрял, и мой мозг не хочет, чтобы сотрудничество, пиво тоже не помогло.. по крайней мере на этот раз

Поэтому я пишу приложение в угловом формате, где я показываю таблицу с некоторыми данными с повторением ng, и в каждой строке мне нужно иметь такие кнопки, как редактирование, удаление и т.д., Для каждой кнопки у меня есть разные частичные модальности, определяющие в директивах.

И есть проблема, потому что когда я загружаю представление, ng-repeat добавляет для каждой строки директиву с шаблоном, но я хочу вызвать директиву, когда я нажимаю на определенную кнопку в строке не для всех строк при загрузке представления

    <h4 class="modal-title">Name for: {{name}}</h4>

<add-button></add-button>

<table class="table table-hover">
    <thead>
    <tr>
        <input type="search" placeholder="search" ng-model="findThisData">
        <td>Id</td>
        <td>Name</td>
    </tr>
    </thead>
    <tr ng-repeat="data in DataOne | filter:findDataOne | orderBy: 'id'">

        <td>{{data.id}}</td>

        <td ng-model="data.name">{{data.name}}</td>

        <td>
       **strong text**

            <edit-input></edit-input>
            <delete-button></delete-button>
        </td>
    </tr>
</table>

Частично EditButton:

    <button class="btn btn-success" type="button" data-toggle="modal" data-target=".bs"
        ng-click="modalContent(data.id, $index)" >Edytuj{{data.name}}
</button>
<div  class="modal fade bs" role="dialog" id="yolo">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">

                <h4 class="modal-title">Edycja{{data.version}}</h4>
            </div>
            <div class="modal-body">
                <input type="text" ng-model="input.name"/>
            </div>
            <div class="modal-footer">
                <button class="btn btn-danger" ng-click="save(input.name)" data-dismiss="modal">Zapisz</button>
                <button type="button" class="btn btn-primary" data-dismiss="modal">Zamknij</button>
            </div>
        </div>
    </div>
</div>

Директивы:

    define(['angular'], function () {
    'use strict';
    var dataDirectives = angular.module('dataModule.dataDirectives', []);

    dataDirectives.directive('dataName', function(){
        return{
            restrict: 'AE',
            templateUrl: '/front/app/views/users/dataName.html'
        }
    });


    dataDirectives.directive('editInput', function (){
        return{
            restrict: 'AE',
            templateUrl: '/front/app/views/partials/editInput.html'

        }
    });

    dataDirectives.directive('modalName', function () {
        return{
            restrict: 'AE',
            templateUrl: '/front/app/views/partials/modalname.html'
        }
    });
    dataDirectives.directive('deleteButton', function () {
        return{
            restrict: 'AE',
            templateUrl: '/front/app/views/partials/deleteButton.html'
        }
    });
   dataDirectives.directive('addButton', function (){
        return {
            restrict: 'AE',
            templateUrl: '/front/app/views/partials/addButton.html'
        }
    });
});

Поэтому моя цель - иметь кнопку редактирования и удаления в каждой строке таблицы, и когда я нажимаю на эту кнопку, я хочу вызвать действие с модальным шаблоном, но только для этих конкретных данных в строке

Теги:

1 ответ

0

Вы можете добавить переменную ввода для своих директив и использовать их так:

<edit-input rowId="data.id"></edit-input>
<delete-button rowId="data.id"></delete-button>

Вы можете достичь этого, используя область выделения в своей директиве. Вот некоторые полезные ссылки, которые объясняют, как это сделать:

Ещё вопросы

Сообщество Overcoder
Наверх
Меню