我目前在这方面遇到了很多麻烦。我试过使用 ng2-file-upload但事实证明它给了我我不明白的错误。
错误
ERROR Error: Uncaught (in promise): Error: No component factory found for TaskComponent. Did you add it to @NgModule.entryComponents?
noComponentFactoryError@http://localhost:4200/vendor.bundle.js:3565:34 [angular]
它给了我 No component factory found for TaskComponent
错误。这只有在我的组件中有一个 @Directive
时才会出现。
已编辑 TaskComponent.ts
import { Directive, Component, OnInit, OnDestroy, ViewChild, EventEmitter } from '@angular/core';
import { Router, ActivatedRoute, Params } from '@angular/router';
import { Http, Response, Headers } from '@angular/http';
import { FileUploader } from 'ng2-file-upload/ng2-file-upload';
import { ModalDirective } from 'ng2-bootstrap/modal/modal.component';
import { ApiService } from '../../assets/services/api.service';
import { UploadOutput, UploadInput, UploadFile, humanizeBytes } from 'ngx-uploader';
// class FileSelectDirective
@Directive({ selector: '[ng2FileSelect]' })
@Component({
selector: 'app-task',
templateUrl: './task.component.html',
styleUrls: ['./task.component.scss']
})
export class TaskComponent implements OnInit {
ngOnInit(){}
}
我也将其导入到我的模块中。
RtoModule.ts
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { BrowserModule } from '@angular/platform-browser';
import { ModalModule } from 'ng2-bootstrap/modal';
import { FileUploadModule } from 'ng2-file-upload';
import { TaskComponent } from '../task/task.component';
import { TaskDetailsComponent } from '../task-details/task-details.component';
import { RtoRoutingModule } from '../rto-routing/rto-routing.module';
@NgModule({
imports: [
CommonModule,
RtoRoutingModule,
FormsModule,
ReactiveFormsModule,
FileUploadModule,
ModalModule.forRoot()
],
declarations: [
TaskComponent,
TaskDetailsComponent
]
})
export class RtoModule { }
有人能指出我哪里做错了吗?无论在何处实现或任何。
提前致谢!
PS:我目前在这个项目中使用的是Angular4版本
最佳答案
看来我在实现这个模块时犯了一个错误。
不知何故现在它可以工作了,我的组件没有错误。 我在我的组件上实现了这些代码
public uploader:FileUploader = new FileUploader({url: URL});
public hasBaseDropZoneOver:boolean = false;
public hasAnotherDropZoneOver:boolean = false;
现在它似乎工作正常。目前正在开发后端。
感谢所有回答我问题的人!
关于angular - 使用 Angular2 上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43937482/