2016-01-17 18 views
7

這裏是關於AngularJS JavaScript SDK的文檔是否可以從Loopback爲Angular2生成服務?

這個例子適用於Angular。有可能通過命令生成Angular客戶端庫

$ lb-ng ../server/server.js js/lb-services.js 

是否存在使用Angular2與Loopback相同的簡單方法?

編輯

我在這個主題上找到什麼目前。

  1. Issue in loopback-sdk-angular Github知識庫與討論。
  2. 實現示例:BaseResourceModel與BaseResource匹配。
  3. 另一種方式 - 使用從Angular到Angular2的upgrade,直到Loopback Angular 2 SDK的官方實現。
  4. 我已經完成了Angular 2的代碼生成器的alpha版本in fork of loopback-sdk-angular

EDIT

  • Loopback-sdk-buildercomment
  • 回答

    13

    此時你可以使用環回-SDK-角度和回送-SDK的叉-angular-cli軟件包。

    的package.json:

    "devDependencies": { 
        //... 
        "loopback-sdk-angular": "github:qeti/loopback-sdk-angular#188-angular2-support", 
        "loopback-sdk-angular-cli": "github:qeti/loopback-sdk-angular-cli#37-angular2-support" 
    } 
    

    生成客戶端代碼(打字稿):

    import {Component,Injectable} from 'angular2/core'; 
    import {UserApi as UserService} from './lb-services'; 
    import {HTTP_PROVIDERS} from 'angular2/http'; 
    
    @Component({ 
        selector: 'my-app', 
        providers: [UserService,HTTP_PROVIDERS], 
        template: 'some template' 
    }) 
    
    @Injectable() 
    export class AppComponent { 
    
        private login: string; 
        private password: string; 
    
        constructor(protected user: UserService) {} 
    
        onLogin() { 
        let self = this; 
        // Example 1 
        this.user.login({ 
         username: self.login, 
         password: self.password 
        }) 
        .subscribe(res => { 
         // some actions on login 
         this.getData(); 
        }); 
        } 
    
        onLogout() { 
        // Example 2 
        this.user.logout().subscribe(() => { 
         // some actions on logout 
        }); 
        } 
    
        public getData() { 
        // Example 3 
        this.user.count().subscribe((response: any) => { 
         let lastRow = response.count; 
    
         let data = this.user 
         // Example 4 
         .find({ 
          offset: 0, 
          limit: 100 
         }) 
         .subscribe(function(response: any) { 
          // Process response 
         }); 
        }); 
        } 
    } 
    
    +0

    我收到以下異常'EXCEPTION:

    ./node_modules/.bin/lb-ng ./server/server.js ./client/src/app/lb-services.ts -l angular2 

    使用示例沒有提供爲Http! (App - > UserApi - > Http)'想法? – essaji

    +0

    @essaji,請顯示您的代碼。你如何提供Http到你的組件?有'提供者:[Http]'?.您可以使用代碼示例創建一個問題(https://github.com/Qeti/loopback-sdk-angular/issues)。 – mnv

    +0

    使用提供者:[UserService,Http],'產生'EXCEPTION:沒有ConnectionBackend的提供者! (AppComponent - > UserApi - > Http - > ConnectionBackend)並使用提供者:[UserService,Http,ConnectionBackend],'產生'EXCEPTION:沒有提供者的RequestOptions! (AppComponent - > UserApi - > Http - > RequestOptions)' – essaji

    相關問題