我在使用Angular-cli构建的Angular 7应用程序中同时使用svg.js和svg.draggable.js。 在本地,一切正常,但是一旦完成生产构建,我就会收到错误消息。进入页面时,可拖动不是函数。
这是我在组件中同时使用它们的方式:
import * as SvgJs from '@svgdotjs/svg.js';
import '@svgdotjs/svg.draggable.js';
这就像生产版本的Angular-cli不包含svg.draggable。
也许我需要做更多的事情,但是由于它在本地工作,所以我真的不知道该怎么办。 有谁知道它为什么会发生以及如何解决?
也许它与svg.draggable.js无关,但是与Angular-cli无关,但是我不知道。
答案 0 :(得分:0)
package.json
"@svgdotjs/svg.draggable.js": "^3.0.2",
"@svgdotjs/svg.filter.js": "3.0.6",
"@svgdotjs/svg.js": "3.0.12",
"@svgdotjs/svg.panzoom.js": "^2.0.3",
...
"devDependencies": {
"@angular-devkit/build-angular": "0.800.1", //not 0.800.2 !!!
"@angular/cli": "8.0.1",
...
组件
import { SVG, G, Pattern, Text, TextPath, Image, Svg } from '@svgdotjs/svg.js'
import '@svgdotjs/svg.filter.js'
import '@svgdotjs/svg.panzoom.js'
import '@svgdotjs/svg.draggable.js'
....
const imageSVG = this.draw.image(dataUrl).draggable()
....
node_modules
svj.js master from 24.05.2019 !!!!!
答案 1 :(得分:0)
我的问题来自我使用的是分支的事实,而不是它的编译版本。我将叉子发布到一个私人的npm上,它起作用了。 现在有了新标签,它甚至可以与官方软件包一起使用。
所以我对这个不好。