我试图将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模块的解决方案吗?
答案 0 :(得分:1)
要创建新的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');
答案 1 :(得分:1)
这就是我将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');
}
}