当AOT使用Kendo Angular2 NumericTextBox和MaskedTextBox编译项目时,发生以下错误:
maskedtextbox.component.ngfactory.ts:275:35:提供的参数与呼叫目标的任何签名都不匹配。
maskedtextbox.component.ngfactory.ts:279:35:提供的参数与呼叫目标的任何签名都不匹配。
maskedtextbox.component.ngfactory.ts:283:35:提供的参数与呼叫目标的任何签名都不匹配。
numerictextbox.component.ngfactory.ts:203:41:属性'widgetClass'是私有的,只能在类'NumericTextBoxComponent'中访问
numerictextbox.component.ngfactory.ts:208:41:属性'numericClass'是私有的,只能在类'NumericTextBoxComponent'中访问
6.numerictextbox.component.ngfactory.ts:242:48:属性'hostBlur'受到保护,只能在类'NumericTextBoxComponent'及其子类中访问。
这是我的package.json条目:
"@angular/common": "2.4.0",
"@angular/compiler": "2.4.0",
"@angular/compiler-cli": "2.4.0",
"@angular/core": "2.4.0",
"@angular/forms": "2.4.0",
"@angular/http": "2.4.0",
"@angular/platform-browser": "2.4.0",
"@angular/platform-browser-dynamic": "2.4.0",
"@angular/platform-server": "2.4.0",
"@angular/router": "3.4.0",
"@progress/kendo-angular-buttons": "0.14.0",
"@progress/kendo-angular-dialog": "0.14.1",
"@progress/kendo-angular-dropdowns": "0.24.4",
"@progress/kendo-angular-intl": "0.9.0",
"@progress/kendo-angular-grid": "0.7.0",
"@progress/kendo-angular-popup": "0.15.0",
"@progress/kendo-angular-upload": "0.12.0",
"@progress/kendo-data-query": "0.2.0",
"@progress/kendo-popup-common": "0.3.0",
"@progress/kendo-angular-inputs": "0.18.2",
"@progress/kendo-theme-default": "2.11.4",
"@telerik/kendo-dropdowns-common": "0.2.0",
"@telerik/kendo-intl": "0.12.0",
"@telerik/kendo-theme-default": "1.32.0",
"@telerik/kendo-draggable": "1.5.1",
"@telerik/kendo-inputs-common": "2.1.0",
AppModule导入
import { DialogModule } from '@progress/kendo-angular-dialog';
import { DropDownsModule } from '@progress/kendo-angular-dropdowns';
import { PopupModule } from '@progress/kendo-angular-popup';
import { IntlService } from '@progress/kendo-angular-intl';
另一个模块导入
import { GridModule } from '@progress/kendo-angular-grid';
import { UploadModule } from '@progress/kendo-angular-upload';
import { InputsModule } from '@progress/kendo-angular-inputs';
答案 0 :(得分:0)
为什么所有的telerik包裹?你可能不需要那些。你也可以分享你的app.module.ts文件吗?
您应该只使用@progress包并在app.module.ts中声明:
import { InputsModule } from '@progress/kendo-angular-inputs';
编辑:回答太快,他们是进度包的依赖。但是,您不应该将它们放在packages.json中,因为它们将由npm作为依赖项自动安装。
答案 1 :(得分:0)
我也有这个问题(或类似的东西)。我无法运行我的应用程序的JIT版本(使用“npm start”与lite服务器)或将应用程序构建为AOT版本。我甚至没有在我的应用程序中的任何地方使用蒙版文本框。我完全安装输入的唯一原因是滑块。
无论如何,如果工厂组件出现问题,我可以理解构建导致错误,但我不明白为什么运行JIT版本会出问题。也许既然AOT文件夹位于我的root npm安装的应用程序文件夹中,所有内容都在npm start上编译JIT?
我能够通过删除以下文件来运行JIT版本:
AOT\app
AOT\@progres
AOT\@telerik
但我无法构建应用程序。当我尝试时,我得到以下内容:
错误 C:/Dashboard/aot/node_modules/@progress/kendo-angular-inputs/dist/es/slider/slider-ticks.component.ngfactory.ts:87:7: 提供的参数与呼叫目标的任何签名都不匹配。
错误 C:/0/Health/Dashboard-lite/aot/node_modules/@progress/kendo-angular-inputs/dist/es/slider/slider.component.ngfactory.ts:207:7: 提供的参数与呼叫目标的任何签名都不匹配。
检查slider-ticks.component.ngfactory,错误如下所示:
希望这有助于最终解决问题...
答案 2 :(得分:0)
得到同样的错误。我修改了文件numerictextbox.component.d.ts以从3声明中删除private / protected。并将widgetClass和numericClass的类型设置为任何以使构建工作 可以忽略这些吗?
错误 App /aot/node_modules/@progress/kendo-angular-inputs/dist/es/numerictextbox/numerictextbox.component.ngfactory.ts:195:41:Property' widgetClass'是私有的,只能在课程中访问' NumericTextBoxComponent'。 错误在 App /aot/node_modules/@progress/kendo-angular-inputs/dist/es/numerictextbox/numerictextbox.component.ngfactory.ts:200:41:Property' numericClass'是私有的,只能在课程中访问' NumericTextBoxComponent'。 错误在 App /aot/node_modules/@progress/kendo-angular-inputs/dist/es/numerictextbox/numerictextbox.component.ngfactory.ts:214:48:Property' hostBlur'受保护,只能在课程中访问' NumericTextBoxComponent'及其子类。