1

我正在尝试onTagAdding使用提供程序为回调设置默认函数tagsInputConfig。没有成功。

tagsInputConfig.setDefaults('tagsInput', {
    placeholder: 'Search',
    maxTags: 10,
    minLength: 5,
    maxLength: 40,
    replaceSpacesWithDashes: false,
    onTagAdding: function (x,y,z) {
        debugger; // breakpoint is never called
    }
});

除回调函数外,所有其他默认选项均已正确设置。另一方面,当我将其配置为属性时它可以工作:

<tags-input on-tag-adding="onTagAdding($tag)" ng-model="search"></tags-input>

有没有办法为此回调设置默认函数?

4

2 回答 2

2

您可以将范围内的任何函数定义为回调,这是一个示例

# test.html
<div ng-controller="MyCtrl">
    <tags-input on-tag-adding="myFunction($tag)" ng-model="search"></tags-input>
</div>

并在 js 文件中

angular.module('myModule').controller('MyCtrl', function($scope) {
    $scope.myFunction = function($tag) {
        console.log($tag);
        return false;
    };
});

希望能帮助到你!

于 2015-12-22T14:00:42.920 回答
1

根据我从文档(tags-input.js && configuration.js)中可以看出,onTagAdding 似乎不是您可以指定的默认值。

根据来源,这里是可直接从源代码获得的完整列表(PS:第四个参数中对象的键是默认值的名称):

tagsInputConfig.load('tagsInput', $scope, $attrs, {
                template: [String, 'ngTagsInput/tag-item.html'],
                type: [String, 'text', validateType],
                placeholder: [String, 'Add a tag'],
                tabindex: [Number, null],
                removeTagSymbol: [String, String.fromCharCode(215)],
                replaceSpacesWithDashes: [Boolean, true],
                minLength: [Number, 3],
                maxLength: [Number, MAX_SAFE_INTEGER],
                addOnEnter: [Boolean, true],
                addOnSpace: [Boolean, false],
                addOnComma: [Boolean, true],
                addOnBlur: [Boolean, true],
                addOnPaste: [Boolean, false],
                pasteSplitPattern: [RegExp, /,/],
                allowedTagsPattern: [RegExp, /.+/],
                enableEditingLastTag: [Boolean, false],
                minTags: [Number, 0],
                maxTags: [Number, MAX_SAFE_INTEGER],
                displayProperty: [String, 'text'],
                keyProperty: [String, ''],
                allowLeftoverText: [Boolean, false],
                addFromAutocompleteOnly: [Boolean, false],
                spellcheck: [Boolean, true]
            });

tl;博士

不,您不能为 onTagAdding 回调设置默认函数,但在他们的github上提交可能是个大问题!!!

于 2015-11-18T17:46:37.473 回答