Angular 意外标记。Typescrcipt中应包含构造函数、方法、访问器或属性
我试图在angular 4中使用ng2文件上载在item.upload()之后回调,但我得到一个错误,即“意外令牌”。应为“构造函数、方法、访问器或属性”,应为“声明或语句” 下面是我的组件和app.module代码 有人帮我节省时间吗 上传组件Angular 意外标记。Typescrcipt中应包含构造函数、方法、访问器或属性,angular,typescript,ng2-file-upload,Angular,Typescript,Ng2 File Upload,我试图在angular 4中使用ng2文件上载在item.upload()之后回调,但我得到一个错误,即“意外令牌”。应为“构造函数、方法、访问器或属性”,应为“声明或语句” 下面是我的组件和app.module代码 有人帮我节省时间吗 上传组件 import { Component } from '@angular/core'; import * as FileSaver from 'file-saver';
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.
}
}
}
应用程序模块.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 { }
只有类成员应该直接位于类内部。作为类初始化的一部分需要执行的任何代码都应该在构造函数中:
// ...
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.
}
}
}
}
只有类成员应该直接位于类内部。作为类初始化的一部分需要执行的任何代码都应该在构造函数中:
// ...
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.
}
}
}
}
将
this.uploader.onSuccessItem=..
移动到constructor
将this.uploader.onSuccessItem=..
移动到constructor
但如果我在构造函数中使用上述方法,则在成功上载后不会触发回调函数。但如果我在构造函数中使用上述方法,则在成功上传。