0

次のコーディング パターンを使用しています。

function submit() {

    function submitModalDone() {
        // do something
    }

    function submitModalFail() {
        // do something
    }

    $.ajax(
       {
           url: "xxx"
       })
       .done(submitModalDone)
       .fail(submitModalFail);
}

submitModalDone と submitModalFail は $.ajax からのみ呼び出されるため、submit 関数内に配置しました。

ただし、コードをそのまま関数の最後に、すべての子関数の後に追加することをお勧めします。これにより適したデザインパターンはありますか?$.ajax コードやその他のコードがコンテナの外にあるのは奇妙に思えます。

4

1 に答える 1

1

それはまともで説明的なパターンだと思います。

ただし、次のように構成することもできます。

var submit = (function () {

    function submitModalDone() {
        // do something
    }

    function submitModalFail() {
        // do something
    }

    return function () {
        $.ajax({
            url: "xxx"
        }).done(submitModalDone).fail(submitModalFail);
    };

}());

これにより、作成が回避されsubmitModalDonesubmitModalFail毎回submit呼び出されます。

于 2012-11-21T15:06:02.233 に答える