Javascript 如何使用jasmine测试Angular2中的外部加载模块
我正在使用创建世界图表地图 在我的组件中,我添加了如下内容:Javascript 如何使用jasmine测试Angular2中的外部加载模块,javascript,angular,d3.js,karma-jasmine,topojson,Javascript,Angular,D3.js,Karma Jasmine,Topojson,我正在使用创建世界图表地图 在我的组件中,我添加了如下内容: declare const Datamap; this.map = new Datamap({element: document.getElementById('map-container'), fills: { TOP: 'rgb(14, 120, 230)', OTHER: 'rgb(170, 209, 242)', defaultFill: 'rgb(211, 211, 211)' },
declare const Datamap;
this.map = new Datamap({element: document.getElementById('map-container'),
fills: {
TOP: 'rgb(14, 120, 230)',
OTHER: 'rgb(170, 209, 242)',
defaultFill: 'rgb(211, 211, 211)'
},
data: data,
geographyConfig: {
popupTemplate: function(geo, data) {
this.getTemplate(geo,data)
},
popupOnHover : true,
highlightOnHover : false
}
});
import * as topojson from '../../topojson.min.js';
import * as d3 from '../../d3.min.js';
当我为此运行测试用例时,会出现以下错误:
Unexpected value '[object Object]' imported by the module 'DynamicTestModule'
在创建新地图之前,在此页面上包含d3.js(v3.0.3或更高版本)和topojson
所以我导入了d3和topojson,如下所示:
declare const Datamap;
this.map = new Datamap({element: document.getElementById('map-container'),
fills: {
TOP: 'rgb(14, 120, 230)',
OTHER: 'rgb(170, 209, 242)',
defaultFill: 'rgb(211, 211, 211)'
},
data: data,
geographyConfig: {
popupTemplate: function(geo, data) {
this.getTemplate(geo,data)
},
popupOnHover : true,
highlightOnHover : false
}
});
import * as topojson from '../../topojson.min.js';
import * as d3 from '../../d3.min.js';
现在我得到了这个错误:
Unexpected value '[object Object]' imported by the module 'DynamicTestModule'
我在等级库文件中的导入:
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations : [WorldChart
],
imports: [
FormsModule,
NvD3Module,
MaterialModule.forRoot()
],
// providers :[
// {provide: d3},
// {provide: topojson}
// ]
})
.compileComponents();
}));
我不知道如何才能删除此项