如何访问ng-tags-input中的剩余文本

est*_*nrv 2 ng-tags-input

输入中的左侧文本是否以编程方式可访问?如果是这样,怎么样?

我只允许自动完成标记(用作搜索过滤器),并希望使用左侧文本作为附加关键字,这意味着我想知道它是否绑定到任何东西,所以我可以将它传递给搜索功能.

谢谢您的帮助

Mic*_*ord 6

这不是直接可能的,但是您可以通过使用辅助指令来破解指令并使其工作:

app.directive('bindInternalInputTo', function() {
  return function(scope, element, attrs) {
    var property = attrs.bindInternalInputTo,
        input = element.find('input'),
        inputScope = input.scope();

    inputScope.$watch('newTag.text', function(value) {
      scope[property] = value;
    });
  };
});
Run Code Online (Sandbox Code Playgroud)

现在,您可以通过执行以下操作将外部作用域中的某个变量绑定到内部输入:

<tags-input ng-model="tags" bind-internal-input-to="variable"></tags-input>
Run Code Online (Sandbox Code Playgroud)

工作的Plunker

请注意,此解决方案无法保证与未来版本的ngTagsInput一起使用,因为它依赖于内部实现细节.