无法在打字稿中调用svgdotjs rect方法

Not able to call svgdotjs rect method in typescript

我正在尝试将 Svgdotjs 版本 3.0.2 与打字稿一起使用,以便在屏幕上绘制一个简单的矩形,但是打字稿定义文件缺少 rect 方法。

我尝试按照文档中的指南进行操作,但无论我尝试什么,类型文件中似乎都缺少方法。

/// <reference path="../../../node_modules/@svgdotjs/svg.js/svg.js.d.ts"/>
import * as svgjs from "@svgdotjs/svg.js"

var draw = svgjs.SVG('stock-location-svg').size(300, 300);
var rect = draw.rect(90, 100).fill('#f06');

但找不到draw.rect() 中的方法(既不是直线也不是椭圆或圆link)。有人可以指导我找到有关如何在打字稿中正确导入 svgdotjs 模块的解决方案吗?

要创建一个新的 svg 文档,您调用 svgjs.SVG(),然后您可以使用 addTo('#stock-location-svg')

将其添加到您喜欢的任何节点
/// <reference path="../../../node_modules/@svgdotjs/svg.js/svg.js.d.ts"/>
import * as svgjs from "@svgdotjs/svg.js"

var draw = svgjs.SVG().addTo('stock-location-svg').size(300, 300);
var rect = draw.rect(90, 100).fill('#f06');

这就是我使用 svg.js 3.0 和打字稿的方式

import { Component, OnInit } from '@angular/core';
import { SVG, Svg } from "@svgdotjs/svg.js"   //v 3.0

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
  draw: Svg

  ngOnInit() {
    this.draw = SVG().addTo('#canvas').viewbox(0, 0, 300, 140)
    let rect = this.draw.rect(90, 100).fill('#f06');
  }
}