0

見栄えが良いのでやりたくないこのフレームワークから先に進もうとしていますが、初期の段階で次々と頭痛に直面しています。

現在、私の問題は、コントローラーから $http 呼び出しを行おうとしています。これが私の現在のコードです:

angular
  .module('login', [])
  .controller('LoginController', ['$scope', '$http', 'supersonic', function($scope, $http, supersonic) {
      // Controller functionality here
      $scope.login = function () {
          supersonic.logger.debug('before ajax');

          $http.post('http://server/api/user/login', {
              username: $('#username').val(),
              password: $('#password').val()
          }).error(function () {
              console.log('error');
              supersonic.logger.debug('Error');
          }).success(function () {
              console.log('success');
              supersonic.logger.debug('Success');
          });

          supersonic.logger.debug('after ajax');
      }
  }]);

私はこれに慣れていないことを認めますが、多くのドキュメントを読み、インターネットをトロールして、 $http などを注入するさまざまな方法を試みましたが、うまくいきませんでした。このコードは、「不明なプロバイダー: supersonicProvider」というエラーになります。

噴射から超音速を除外すると、超音速パラメーターは定義されません。

supersonic インジェクションを除外して、supersonic.logger 行をコメントアウトしても、$http 行で「$ が定義されていません」というエラーが発生します。

違いがある場合は、usb を介して Chrome デバッガーからこれらのエラーを取得します。

これについて何か助けていただければ幸いです。

4

1 に答える 1

2

次のコードはトリックを行うようで、コントローラーで $http と超音速にアクセスできます

angular
.module('login', ['supersonic'])
.controller('LoginController', function($scope, supersonic, $http) {
});
于 2015-04-01T07:38:03.893 に答える