使用 Typescript 和 Webpack 捕捉 SVG 错误“无法读取未定义的属性‘on’”

2024-01-11

我有一个使用 Snap SVG 的 Angular 4 应用程序,并且遇到了 webpack 问题“无法读取未定义的属性‘on’”。

使用 snapsvg-cjs 似乎是解决此问题的最简单方法,但随后我丢失了所有漂亮的打字稿类型(在这里回答:SVG 的 Typescript 库 https://stackoverflow.com/questions/47724872/typescript-library-for-svg).

有一些关于使用 import-loader 的讨论,但是我需要一个 web pack 配置,而 Angular cli 则将其删除。加:

import Snap from 'imports-loader?this=>window,fix=>module.exports=0!snapsvg/dist/snap.svg.js';

不在打字稿中编译。

我对所有这些东西都很陌生,所以感觉有点困惑 - 我希望我能再次在 Windows 上做 VB6....:)。谁能澄清这一点吗?

Thanks


我也有同样的问题。对于我来说,我安装了snapsvg-cjs and @types/snapsvg,然后按如下方式导入库:

import "snapsvg-cjs"

您只需要以这种方式导入一次(也许在main.ts文件什么的)

然后在要使用该库的文件中,导入类型,如下所示:

import * as SNAPSVG_TYPE from "snapsvg"
declare var Snap: typeof SNAPSVG_TYPE

这允许我像平常一样使用 typescript 类型,同时仍然使用 webpack 兼容版本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Typescript 和 Webpack 捕捉 SVG 错误“无法读取未定义的属性‘on’” 的相关文章

随机推荐