Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript能检测UWP吗?_Javascript_Visual Studio_Uwp_Xbox One - Fatal编程技术网

Javascript能检测UWP吗?

Javascript能检测UWP吗?,javascript,visual-studio,uwp,xbox-one,Javascript,Visual Studio,Uwp,Xbox One,我正在使用NodeJS和EaselJS构建一个小游戏,在本地托管的浏览器中运行良好。我下载了VisualStudio并开始从中创建UWP的过程,这样我就可以在我的Xbox One上玩了。Visual Studio基本上只是中间人,因为我使用“起始页”并将其指向本地托管的web服务器来创建应用程序,而不是尝试重新发明轮子 我只想在Windows.UI作为Windows/Xbox应用程序运行时使用它的一些功能,特别是在电视上显示的Overscan功能。到目前为止,我无法让JS检测执行类型。我补充说

我正在使用NodeJS和EaselJS构建一个小游戏,在本地托管的浏览器中运行良好。我下载了VisualStudio并开始从中创建UWP的过程,这样我就可以在我的Xbox One上玩了。Visual Studio基本上只是中间人,因为我使用“起始页”并将其指向本地托管的web服务器来创建应用程序,而不是尝试重新发明轮子

我只想在Windows.UI作为Windows/Xbox应用程序运行时使用它的一些功能,特别是在电视上显示的Overscan功能。到目前为止,我无法让JS检测执行类型。我补充说

if (Windows)
{
    Windows.UI.ViewManagement.ApplicationView.getForCurrentView() ...
}
但当我在普通的ol浏览器中运行它时,我会得到一个未定义Windows的引用错误。我也试过了

if(typeof Windows !== 'undefined'){....
这使得浏览器版本可以正常工作,但VisualStudio中的部署测试也看不到它(我放了一个调试控制台输出以确保)


有没有可能做到两全其美,或者我需要全力以赴,在VS中开发一个特定版本的游戏,以获得我想要的?

我可以想出两个可能的选择。首先检查对象的类型:

if(typeof Windows != 'undefined')
{
}
其次,在检查之前声明一个变量
Windows
。可以在javascript中重新声明变量。它不会覆盖原始文件

var Windows;
if(Windows)
{
}

我明白了。if(typeof)解决方案部分正确,因此指向Shawn。我没有做到的是在VisualStudio内部的appxmanifest中包含对URI的WinRT访问。一旦我告诉它在应用程序端实际查找Windows,我就会得到调试输出,屏幕也会相应地缩放。无论如何,谢谢你看一看

那么
如果(typeof Windows!=“underfined”)
如我所述,我可以执行typeof检查,浏览器继续它的快乐方式,但是UWP部署也会通过它,而不是执行语句中的代码。如果我很早就声明了var来安抚浏览器版本,它不会仍然在If语句中的UI声明上抛出错误吗?因为这些都不存在,即使Windows变量存在。声明但未赋值的变量是
未定义的
,但对于if语句来说效果很好