我正在尝试找出用于title
的类型。
let text: String = `${this.altText || this.defaultText}`;
title = document.createElementNS(this.svgns, "title");
title.innerHTML = text;
唯一接近的是let title: Element;
,但是title.innerHTML
会产生以下错误:
Type 'String' is not assignable to type 'string'.
'string' is a primitive, but 'String' is a wrapper object. Prefer using 'string' when possible.ts(2322)
我认为这可能需要定义一个接口,但是我只是从TypeScript开始,仍然试图找出细微差别。
编辑:添加了文本声明
答案 0 :(得分:0)
虽然看起来很像,但您可能输入了错误的文本变量(但我们无法从您提供的代码段中看到它)。
类型“字符串”不可分配给类型“字符串”。 “字符串”是基元,但是“字符串”是包装对象。 ts(2322)
根据错误引用,我猜想文本变量具有 String 类型(请注意首个大写字母),而 title.innerHTML 具有字符串类型(请注意第一个小写字母)。
为 text 变量使用 string 类型应该会有所帮助。