1
我正在嘗試使用ES6導入/導出語法創建和註冊新服務,但我不確定正確的格式是什麼。我使用它的唯一方法如下,如果我在注入AccountService時在我的index.module.js中使用了引號,它會中斷。我應該在我的服務文件中創建新的services.account-service模塊嗎?爲什麼服務只在我不使用引號時才被正確注入?謝謝!使用ES6語法註冊AngularJS服務
account.service.js:
class AccountService {
exportTrack(response, account) {
return {
method: 'PUT',
url: 'https://api.spotify.com/v1/me/tracks?ids=' +response.data.tracks.items[0].id+ '&type=track&market=US',
headers: {
'Authorization': 'Bearer ' + account.auth
}
};
}
}
export default angular.module('services.account-service', [])
.service('AccountService', AccountService)
.name;
index.module.js:
import { config } from './index.config';
import { routerConfig } from './index.route';
import { runBlock } from './index.run';
import HeaderController from '../app/components/header/header.controller';
import SidenavController from '../app/components/sidenav/sidenav.controller';
import LoginController from './login/login.controller';
import AccountController from './account/account.controller';
import AccountService from './account/accountService-service';
import TrackController from './track/track.controller';
import PlaylistController from './playlist/playlist.controller';
import { Velociraptor } from '../app/components/services/velociraptor-service'; // Component Loopback service (lb-ng)
angular.module('velociraptor-ui',[
'ngAnimate',
'ngCookies',
'ngTouch',
'ngSanitize',
'ngMessages',
'ngAria',
'ngResource',
'ui.router',
'ngMaterial',
'Velociraptor',
'toastr',
AccountService
])
.constant('moment', moment)
.config(config)
.config(routerConfig)
.run(runBlock)
.controller('HeaderController', HeaderController)
.controller('SidenavController', SidenavController)
.controller('LoginController', LoginController)
.controller('AccountController', AccountController)
.controller('TrackController', TrackController)
.controller('PlaylistController', PlaylistController);
這是有道理的,我想我只是不明白模塊的命名格式,以及究竟是怎麼回事:'export default angular.module('services.account-service',[]) .service( 'AccountService',AccountService) .name;' –