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:4番目の引数のオブジェクトのキーはデフォルトの名前です):

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;dr

いいえ、onTagAdding コールバックのデフォルト関数を設定することはできませんが、githubに送信するのは大きな問題になる可能性があります!!!

于 2015-11-18T17:46:37.473 に答える