[英]Type 'number' is not assignable to type 'string'. ts(2322)
所以我正在尝试创建一个用于调整容器大小的拖动条。
var handler = document.querySelector('.handler') as HTMLElement;
var wrapper = handler!.closest('.wrapper') as HTMLElement;
var boxA = wrapper!.querySelector('.box') as HTMLElement;
var isHandlerDragging = false;
document.addEventListener('mousedown', function(e) {
if (e.target === handler) {
isHandlerDragging = true;
}
});
document.addEventListener('mousemove', function(e) {
if (!isHandlerDragging) {
return false;
}
var containerOffsetLeft = wrapper!.offsetLeft;
var pointerRelativeXpos = e.clientX - containerOffsetLeft;
boxA!.style.width = (Math.max(boxAminWidth, pointerRelativeXpos - 8)) + 'px';
boxA!.style.flexGrow = 0; //Type 'number' is not assignable to type 'string'.ts(2322)
如何声明boxA ,使其属于 number 类型?
我是 typescript 的新手,因此非常感谢任何建议。
您不想更改boxA
的类型。 错误说boxA..style
flexGrow
一个字符串,但您试图为其分配一个数字。
所以改为尝试:
boxA!.style.flexGrow = "0";
此外,您实际上并不需要使用非空断言运算符!
操作员。 由于您已经断言boxA
是HTMLElement
,因此 Typescript 知道它具有style
属性。
所以,最后你可以这样写:
boxA.style.flexGrow = "0";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.