2016-11-17 28 views
3

我正在使用textAngular Wysiwyg /文本编辑器和@mentio库,当我在一个HTML页面中使用指令多于一个导致问题。我试图使用上下文编辑器提ID还是没能解决问题无法在'Range'上执行'setStart':在页面中使用@enntio时,参数1不是'Node'类型的问题?

<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}}'"); 
       }; 

回答

0

我解决这个问题的方法是通过编写一个函数返回mentio换价值。

<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; 
      }; 
相关问题