Не удалось выполнить '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;
};