0

私はハッキングしており、現在、バックエンド サービスを呼び出すかなりの数のコントローラーを持っています。現在、エンドポイントをコントローラーに直接入力しており、URls は文字列リテラルとして格納されています。

コードを整理するための良いアイデアがある人はいますか?エンドポイントを js オブジェクトにキーと値のペアとして保存する必要がありますか?

私は現在、各コントローラーに注入しているrestangularを使用しています。これは正しい方法ですか?これをサービスに抽象化できますが、これから何を得ることができますか?

現在、私は 2 つの関数を受け入れる resangular 呼び出しを持っています。1 つは成功用、もう 1 つは失敗用です。

誰かがこの種のことを行うための例を持っているか、良い方法を見ましたか?

ありがとう

4

1 に答える 1

2

私と私の同僚は、Restangular とモジュラー アプローチを使用して、コントローラー名をモジュールに渡します。そこで、Restangular 呼び出しが行われます。つまり、同じことを繰り返す傾向がありません。

同様のアプローチを取り、規則に従って、または永続的な場所 (DB/Memory/etc) からコントローラーを動作させるメカニズムを組み込んでみませんか?

モジュールで行うことのスニペットを次に示します。

RestangularProvider.setBaseUrl(config.apiBaseUrl);

次に、モジュールのコントローラーで(各モジュールには独自のコントローラーがあります):

Restangular.one(this.module.ControllerName, itemCode).get({token: authService.getToken()})
    .then(
        function(event) { 
            $scope.entity = event;
        },
        function(event) { 
            //Bad things went down.
            console.log(event); 
        }
    );

上記の ControllerName は、構築時にコントローラーに渡され、バックエンドの WebAPI コントローラーを参照します。

アプリの開始時に、WebAPI バックエンドに接続し、上記のようにモジュールを構築するために使用されるモジュールとそれぞれのコントローラーのリストをプルダウンします。

進行中のプロジェクトに満足したら、同僚と私はフレームワークを Github に公開して、上記の概念のいくつかを実演し、それに慣れたらこの回答を更新します :)

于 2013-11-01T13:47:11.603 に答える