mbenford/ngTagsInput Несколько тегов без ключевого свойства

Я пытаюсь использовать директиву mbenford/ngTagsInput, как показано ниже

<tags-input name="skill" ng-model="storage.skills" placeholder="specializations" 
min-tags="1" add-on-enter="true" min-length="1" key-property="id" display-property="name" required> 
    <auto-complete source="getSkillSearch($query)" highlight-matched-text="true" min-length="1"></auto-complete> 
</tags-input>

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

https://github.com/mbenford/ngTagsInput/issues/509 (что-то очень похожее), но решения для этого нет. Это обходной путь, или я упускаю что-то очень глупое.

1 ответ

Решение

Есть свойство под названием onTagAdding, Предоставить функцию, которая создает id для тега при добавлении. Вот пример:

HTML

<tags-input name="skill" ng-model="storage.skills" placeholder="specializations" 
min-tags="1" add-on-enter="true" min-length="1" key-property="id" display-property="name" on-tag-adding="createId($tag)" required> 
<auto-complete source="getSkillSearch($query)" highlight-matched-text="true" min-length="1"></auto-complete> 
</tags-input>

SCRIPT

$scope.createId= function(tag) {
    // Only do this if tag.id is undefined
    if(angular.isUndefined(tag.id) {        
       tag.id= tag.name; // or create a random value
    }
};
Другие вопросы по тегам