今日、私のstackoverflow検索機能が壊れていると思います。これを尋ねたのは私だけではないはずです。私は本当にこれを理解するためにいくつかの助けを借りることができたので、私はそうではないことを願っています. データソース間の切り替えが大きな部分を占めますが、「抽象化する最善の方法」も論理的な次の質問です。
とにかく、私は3ダースのウィジェットのようなものを持っています. 各ウィジェットには、3 つのデータ ソース (API フル、API ショート、json ファイル) のいずれかがあります。インターネットから入ってきたばかりのユーザー、営業が提供する一時的なログインを持つユーザー、および独自の API キーでログインしたユーザーがいます。
- ログインなし = ダミーデータ/json
- temp login = 要約されたエンドポイントからのデータ
- API キー = 完全なデータ セット エンドポイント
これを論理的に説明すると、ユーザー アクセス用の $scope.access と、ユーザーがクリックしたウィジェット用の $scope.widget があります。古い関数の習慣に頼ると、これら 2 つをケース ブレークで使用して、適切なエンドポイントの値を返すことができるようです。しかし、次のように $http 呼び出しを機能させる変数を取得できないようです。
$http.get($scope.call).success(function(data) {
$scope.group = data;
});
したがって、私の質問は次のようになります。
変数を使用して $http を再利用する最善の方法 (または私ができる方法) は何ですか?
このロジックをどのように抽象化し、コントローラーからこれを取得する必要がありますか (またはする必要がありますか?)
本当に優れているのは、おそらく次のように、コントローラーで呼び出すことができるものです。
var X = getEndpoint($scope.access, $scope.widget);
var Y = getEndpoint($scope.access, $scope.widget);
var Z = getEndpoint($scope.access, $scope.widget);
残りはフードの下に隠されています。これに取り組む方法についてのアイデアはありますか?
よろしくお願いします。