typescript window.devicePixelRatio

时间:2013-04-10 12:08:08

标签: typescript

我正在尝试在typescript文件中使用window.devicePixelRatio但是无法使用该消息进行编译 “属性'devicePixelRatio'不存在于'Window'类型的值<”

是否有修复或者我必须使用打字稿以外的功能吗?

皮特

2 个答案:

答案 0 :(得分:4)

您可以使用所需的功能扩展Window界面 - 只要新的(ish)没有进入lib.d.ts,您就可以执行此操作。您可能需要在以后将其删除到lib.d.ts时删除您的扩展程序,但编译器会在此时向您发出警告。

interface Window {
    devicePixelRatio: number;
}

var x = 1;

if (window.devicePixelRatio) {
    x = window.devicePixelRatio
}

答案 1 :(得分:3)

如果适用于你,我会选择史蒂夫的解决方案。有时,视觉工作室变得古怪,并开始抱怨已经定义的变量。或者你可以随时做:

var x = 1;
var win:any = window;

if (win.devicePixelRatio) {
    x = win.devicePixelRatio
}

var x = 1;

if ((<any>window).devicePixelRatio) {
    x = (<any>window).devicePixelRatio
}