Не удалось выполнить 'setStart' для 'Range': параметр 1 не относится к типу 'Node', когда при использовании @mentio более одного на странице?

Я использую textAngular Wysiwyg/Text-Editor с библиотекой @mentio, когда я использовал директиву более чем на одной html странице, это вызывает проблему. Я пытался использовать контекстный редактор для упоминания идентификатора до сих пор не может решить проблему

<mentio-menu mentio-for="'content-editor-{{$id}}'"
         mentio-trigger-char="'@'"
         mentio-items="people"
         mentio-template-url="/iterator.tpl"
         mentio-search="searchPeople(term)"
         mentio-select="getPeopleText(item)">

var directiveDefinitionObject = {
        restrict: 'E',
        templateUrl: "app/partials/textAngular-mention-template/replyTextAngularWithMentio.html",
        require: '^ngModel',
        scope: {
            ngModel: '='
        },
        controller: ['$scope', function ($scope) {
                $scope.setup = function (element) {
                    element.attr('mentio', 'mentio');
                    element.attr('mentio-typed-term', 'typedTerm');
                    element.attr('mentio-require-leading-space', 'true');
                    element.attr('mentio-id', "'content-editor-{{$id}}'");
                };

1 ответ

Я решил эту проблему, написав функцию для возврата значения mentio-for.

<mentio-menu mentio-for="getContentId()"
     mentio-trigger-char="'@'"
     mentio-items="people"
     mentio-template-url="/iterator.tpl"
     mentio-search="searchPeople(term)"
     mentio-select="getPeopleText(item)">

Затем по вашей директиве создайте такую ​​функцию:

$scope.getContentId = function() {
                return 'content-editor-' + $scope.id;
            };
Другие вопросы по тегам