2

私はすべてのルールに従っていると確信しています:

  • $get() が定義されています。
  • コントローラーに適切に注入する
  • インスタンス化する前に初期アプリ定義で構成する

ここにフィドルがあります

angular.module('app', function($httpProvider, $locationProvider, MockServiceProvider) {
    delete $httpProvider.defaults.headers.common['X-Requested-With'];
    $locationProvider.html5Mode(false);
    MockServiceProvider.enableMocks(true);
})
.provider('MockService',['$http', '$q', function ($http, $q) {
    this.mocksEnabled = false;
    this.enableMocks = function(val) {
            mocksEnabled = val;
    };
    this.$get = function() {
        var _mock_getNext = function() {
            return {
                'status' : {
                    'type': 'OK',
                    'msg': null
                },
                'data': {
                    'id': 123456789
                }
            };
        };
        return {
            getData : function() {
                if(mocksEnabled) {
                    return _mock_getNext;
                } else {
                    return "Real Data";
                }
            }
        };
    };
}])
.controller('Main', function(MockService) {
    $scope.maybe_mock_data = MockService.getData();
});
4

1 に答える 1