我使用的是的WebPack和AOT角4和建筑项目,但它给我这个错误:角4 + AOT的WebPack建设问题
ERROR in ng:///D:/proj/src/client/app/app.component.html (14,5): '$event' is declared but never used.
我已经在plunker提出简化的项目副本:http://embed.plnkr.co/RxY2mhfhJmcBFKjG70f0/
从plunker- 下载项目:
您可以重现此问题与以下步骤https://plnkr.co/edit/RxY2mhfhJmcBFKjG70f0?p=info
- 在项目根
npm i
然后npm run build:client
或npm run build-v:client
如果更改src/client/app/app.component.html
在第13行是这样的:
<li *ngFor="let hero of heroes" (click)="onSelect(hero, $event)" [class.selected]="hero === selectedHero">
错误就会消失。但显然这是一个不好的解决方案。
任何想法来解决这个问题?
我认为AoT以某种方式将模板编译为某种中间资源,并添加该变量。但我无法找到如何管理/防止/解决这个问题。
显然你有一个'$事件'定义的地方,它没有被使用..但我没有看到你的plnkr。你确定你把正确的代码放在那里吗?该错误暗示了您的HTML中的某个内容“
”。 – Lansana@Lansana,我更新了我的问题来解释你的 –
我非常确定这与正在使用的编译器/构建过程有关。有一个'$ event'为'(click)'创建,但是你不用它。这类似于在打字稿中声明一个变量而不使用它。我认为在这种情况下,您正在使用的编译器或构建过程会引发错误,并且可以证明这一点,因为如果使用'$ event',错误就会消失。您是否创建了自己的定制webpack构建配置,或者您是否使用Angular CLI? – Lansana