我正在尝试将Frappe甘特库与角5集成在一起。这是一个正式的文档https://frappe.io/gantt,但是我想不出一条出路,因为类型记录会在组件中抛出一个错误,在这个组件中,它说‘不能使用'new’和一个类型没有调用或构造签名的表达式。‘当我执行时:
frappeGantt = new Gantt("#gantt", this.tasks);现在,frappe.min.js已经导入到我的index.html中,但是我需要将新的甘特对象分配给frappeGantt。有办法解决这个问题吗?
发布于 2018-09-14 11:59:07
this.frappeGanttChart = new frappeGantt.default("#ganttChart", this.tasks, {});需要在frappeGantt之后添加默认关键字。这是因为包导出默认类。
发布于 2020-12-05 14:22:23
我设法解决了问题的角度10,也许对你来说是这样的:
在默认情况下,即使模块不可导出,也必须设置允许默认导入的标志。
我的组件看起来如下:
import Gantt from 'frappe-gantt';
import {Component, ViewChild, ElementRef, OnInit} from '@ angular / core';
@Component ({
selector: 'myGantt',
templateUrl: './gantt.component.html',
styleUrls: ['./gantt.component.scss'],
})
export class GanttComponent implements OnInit {
@ViewChild ('gantt') ganttEl: ElementRef;
gantt;
tasks = [
{
id: 'Task 1',
name: 'Redesign website',
start: '2016-12-28',
end: '2016-12-31',
progress: 20,
dependencies: 'Task 2, Task 3',
},
];
ngOnInit () {
this.gantt = new Gantt ('# gantt', this.tasks);
}
}标志被添加到tsconfig.json文件:"allowSyntheticDefaultImports": true
https://stackoverflow.com/questions/52161327
复制相似问题