一、 安装模块html
npm install angular2-image-upload --save
二、配置app.module.tsnode
@NgModule({ imports: [ ..., ImageUploadModule.forRoot(), ... ] })
三、模板中使用npm
<image-upload></image-upload>
四、配置信息服务器
[max]="100" 最大上传文件个数 [url]="'example.com/images/upload'" 上传服务器地址 [headers]="[ {header: 'Authorization', value: 'MyToken'} ]" [buttonCaption]="'选择图片'" [dropBoxMessage]="'拖动到此区域'" // 添加图片 (onFileUploadFinish)="imageUploaded($event)" // 删除图片 (onRemove)="imageRemoved($event)" // 处于挂起状态时候,触发这个事件,上传中,能够禁止肯定按钮等... (isPending)="disableSendButton($event)"
五、处理选择的图片信息angular2
// 组件 import {Component} from "@angular/core"; @Component({ selector: "oa-add-friends", templateUrl: "../templates/add_friends.component.html" }) export class AddFriendsComponent { file: Array<Object>; constructor() { this.file = []; } imageUploaded(event) { console.log(event); this.file.push(event.file); console.log(this.file); } imageRemoved(event) { console.log(event); let index = this.file.indexOf(event.file); if( index > -1) { this.file.splice(index, 1); } console.log(this.file); } } // 界面 <image-upload [buttonCaption]="'选择图片'" [dropBoxMessage]="'拖动图片到这里'" (onFileUploadFinish)="imageUploaded($event)" (onRemove)="imageRemoved($event)" ></image-upload> <p *ngFor="let item of file"> {{item.name}} </p>
六、修改模板样式app
/Users/zhangxuchao/www/oa/node_modules/angular2-image-upload/lib/image-upload/image-upload.component.jsthis
修改里面的template和stylesurl