を拡張しながら、ここにある:活字体キャッチされない例外TypeError私はSVGTextElementのための簡単な拡張を作成しようとしていますSVGTextElement
interface SVGTextElement {
setX(value: string): SVGTextElement;
setY(value: string): SVGTextElement;
}
SVGTextElement.prototype.setX = (value: string): SVGTextElement => {
var el: SVGTextElement = this;
el.setAttribute("x", value);
return el;
}
SVGTextElement.prototype.setY = (value: string): SVGTextElement => {
var el: SVGTextElement = this;
el.setAttribute("y", value);
return el;
}
私はこのように、この拡張機能を使用しています:
const e = document.createElementNS("http://www.w3.org/2000/svg", "text");
e.setX("0");
しかし、私は取得していますエラー:
SvgTextElementExtensions.ts:18 Uncaught TypeError: el.setAttribute is not a function
私は間違っていますか?
ここで 'el'は' SVGTextElement'のインスタンスであり、 'setAttribute'というメソッドはありませんが、明らかにこのエラーが発生します。あなたのタイプをチェックするためにtypescriptを使用することを忘れないでください! – iberbeu