我刚从RC 4升级到Angular 2 Final Release,我收到错误:(SystemJS) Can't resolve all parameters for ElementRef: (?)
这是我的app.module.ts代码:
import { NgModule, ElementRef } from '@angular/core';
import {FormsModule} from '@angular/forms';
import { HttpModule, JsonpModule } from '@angular/http';
import { BrowserModule } from '@angular/platform-browser';
import {DashboardModule} from '../../areas/dashboard/dashboard.module';
import {AppComponent} from '../../areas/dashboard/app.component';
import { NgGridModule } from 'angular2-grid';
@NgModule({
declarations: [AppComponent],
imports: [BrowserModule, HttpModule, FormsModule, DashboardModule, NgGridModule],
bootstrap: [AppComponent],
providers: [ElementRef]
})
export class AppModule {}
我不能只在组件级别导入它,因为我也在使用依赖它的插件(例如angular2-grid)
任何想法?
提前谢谢
编辑:
以下是一些调用ngGrid的代码:
<div [attr.ngGrid]="gridConfig" (onItemChange)="onGridItemChange($event)">
<div *ngFor="let Widget of Widgets" class="gridWidget" [class.showingGridView]="Widget.gridview.show" [(attr.ngGridItem)]="Widget.widget" id="widget_{{Widget.id}}">
<div class="title handle"></div>
<h5 class="grid-item-title">{{Widget.title}}</h5>
<a *ngIf="Widget.gridview.show && (Widget.chart.data || Widget.chart.datasets)" class="backLink" title="Back to Chart" (click)="toggleGridView($event)" href="" id="{{Widget.id}}"><i class="fa fa-undo"></i></a>
<a (click)="removeWidgetFromBoard($event)" href="" class="removeLink" id="removeWidgetLink_{{Widget.id}}" title="Remove Widget from Dashboard"><i class="fa fa-trash"></i></a>
<base-chart *ngIf="!Widget.gridview.show" class="chart" id="chart_{{Widget.id}}"
[attr.data]="Widget.chart.data"
[attr.datasets]="Widget.chart.datasets"
[attr.labels]="Widget.chart.labels"
[attr.options]="Widget.chart.options"
[attr.legend]="Widget.chart.legend"
[attr.chartType]="Widget.chart.chartType"
(chartClick)="chartClicked($event)"></base-chart>
<iwe-datatable *ngIf="Widget.gridview.show" id="data-table"
attr.table_title="{{Widget.title}}"
attr.table_summary="A table with data for {{Widget.title}}."
attr.border_type="vertical"
attr.table_content="{{Widget.gridview.tableData}}">
</iwe-datatable>
<img class="smallSpinner" [ngClass]="{visible: Widget.showSpinner}" src="/iwe/img/BG_Spinner_32.gif" alt="Small Spinner" width="34" height="34">
</div>
</div>
答案 0 :(得分:0)
您自己不提供ElementRef
。 ElementRef
由DI动态提供,它始终是对注入它的组件的主机元素的引用。
答案 1 :(得分:0)
尝试删除node_modules
和typings
目录并运行npm i
。
人们在升级后遇到各种奇怪的错误/问题,并且干净的npm安装似乎已经解决了很多次。
如果仍然无效,请发布您的package.json
。