【发布时间】:2018-09-16 16:04:45
【问题描述】:
我安装了包"ngx-image-cropper" 我的项目结构如下
- 应用
- 应用程序 -> 页面
- 应用程序->页面->第1页->组件1
- 应用程序->页面->页面2->组件2
如果我将裁剪器连接到 Component1 那么一切正常 我将 ImageCropperComponent 组件导入 Page1.module.ts 但现在我需要在 Component2 裁剪器中工作。从Page1.module.ts中去掉import,我把它添加到上面的模块中,也就是Page.module.ts中。 我的应用程序不再看到他。
控制台日志
Uncaught (in promise): Error: Template parse errors:
Can't bind to 'image' since it isn't a known property of 'img-cropper'.
1. If 'img-cropper' is an Angular component and it has 'image' input, then verify that it is part of this module.
2. If 'img-cropper' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.
3. To allow any property add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component. ("ex justify-content-center text-center"
我尝试在 App.module.ts 和 Page.module.ts 中安装 ImageCropperModule 没有结果,得到同样的错误。 如何为我的组件安装cropper?我的错误是什么?
我的 page.module.ts
import { NgModule } from '@angular/core';
import { PagesComponent } from './pages.component';
import { PagesRoutingModule } from './pages-routing.module';
import { ThemeModule } from '../@theme/theme.module';
import { NewsModule} from './news/news.module';
import {ImageCropperComponent} from 'ngx-img-cropper';
const PAGES_COMPONENTS = [
PagesComponent,
ImageCropperComponent,
];
@NgModule({
imports: [
PagesRoutingModule,
ThemeModule,
NewsModule,
],
declarations: [
...PAGES_COMPONENTS,
],
})
export class PagesModule {
}
我的component2.component.html(这个代码也用在其他组件中)
<img-cropper class="croppedBlock d-flex justify-content-center text-center"
*ngIf="cropperVisible" [image]="data1" [settings]="cropperSettings1"
(onCrop)="boundInfo($event)"></img-cropper>
<div class="resultCropper">
<span class=" imageCropper" *ngIf="data1.image">
<img *ngIf="savedImage" [src]="data1.image">
</span>
<button class="btn {{classButtonCropper}} d-block mb-2 mt-2 ml-auto mr-auto"
(click)="cropped(bounds)" *ngIf="statusCropped" [innerHtml]="statusCropped">
</button>
</div>
决定 从父模块中移除 ImageCropperComponent 并将 ImageCropperModule 导入每个将使用它的父模块
【问题讨论】:
-
你能显示你的
page.module.ts文件的代码吗? -
@Narm 我添加了自己的模块
-
如果是模块,为什么不将其添加到导入中:[ImageCorpperModule]?而且您也不需要将 ImageCropperComponent 添加到列表中,因为这将在您的 ImageCropperModule 中注册
-
@LkPark 如果添加要导入的 ImageCropperModule,控制台会显示我正在尝试连接同一组件两次(ImageCropperComponent)。如果您从声明中删除 ImageCropperComponent,我会收到上一个错误
-
@IlyaFrolov 那你的模块有问题,能不能给你的NgModule(ImageCropper)加一些sn-ps?
标签: angular typescript