2017-09-19 15 views
0

각도 4에서 ng2-file-upload를 사용하여 item.upload()를 콜백하려고하는데 '예상치 못한 토큰'으로 오류가 발생합니다. 생성자, 메서드, 접근 자 또는 속성이 필요합니다. '및'선언 또는 문이 예상 됨 '예기치 않은 토큰입니다. Typescrcipt에서 생성자, 메서드, 접근 자 또는 속성이 필요합니다.

다음은 my 구성 요소 및 app.module 코드입니다.

어느 한 내 시간

업로드 컴포넌트

   import { Component } from '@angular/core'; 
       import * as FileSaver from 'file-saver'; 
       import * as XLSX from 'xlsx'; 
       import { FileUploader 
       ,FileItem,ParsedResponseHeaders,FileLikeObject} from 'ng2-file-upload'; 

       @Component ({ 
        selector: 'my-app', 
        templateUrl:'./excelUpload.html' 

       }) 
       export class ExcelUploadComponent { 

        private uploader:FileUploader = new FileUploader({url:'http://localhost:5000/upload'}); 

        this.uploader.onSuccessItem = (item:FileItem, response:string, status:number, headers:ParsedResponseHeaders) => 
        { console.log("onSuccessItem " + status, response, item); 
         if(response) 
         { //parse your response. 
         } 
        } 
       } 

app.module.ts

  import { BrowserModule } from '@angular/platform-browser'; 
     import { NgModule } from '@angular/core'; 
     import { FormsModule,ReactiveFormsModule} from '@angular/forms'; 
     import { HttpModule } from '@angular/http'; 
     import { AppComponent } from './app.component'; 
     import { RouterModule, Routes } from '@angular/router'; 
     import {ExcelUploadComponent} from './ExcelUpload/ExcelUpload.Component'; 
     import { Component } from '@angular/core'; 
     import { FileSelectDirective, FileDropDirective } from 'ng2-file-upload'; 
     import { FileUploadModule } from 'ng2-file-upload/ng2-file-upload'; 



     @NgModule({ 
      declarations:[ AppComponent, 
      ExcelUploadComponent 
      ,FileDropDirective, FileSelectDirective ], 
      imports: [ BrowserModule , FormsModule,HttpModule], 
      providers: [], 
      bootstrap: [LayoutComponent] 

     }) 
     export class AppModule { } 
+0

이동'this.uploader.onSuccessItem = ..''에이 내 오류 –

답변

1

만 클래스 멤버는 클래스 내부에 직접해야 저장 않습니다. 클래스 초기화의 일부 생성자에 있어야로 실행해야하는 모든 코드 :

// ... 
export class ExcelUploadComponent { 

    private uploader: FileUploader = new FileUploader({ url: 'http://localhost:5000/upload' }); 
    constuctor() { 
     this.uploader.onSuccessItem = (item: FileItem, response: string, status: number, headers: ParsedResponseHeaders) => { 
      console.log("onSuccessItem " + status, response, item); 
      if (response) { //parse your response. 
      } 
     } 
    } 

} 
+0

감사를 constructor' 위의 메서드를 호출 한 다음 성공적으로 업로드 한 후에 트리거하지 않는 함수를 콜백합니다. – user3301440

+0

를 해결하지만, 내가 사용하는 경우 – user3301440

+0

https://stackoverflow.com/questions/43516846/how-to-return-response-with-ng2-file-upload – user3301440