我正在使用带有getUserMedia的相机,我得到了一些我想修复的错误。事情是Visual Studio只允许我用IE调试JavaScript(我的意思是命中断点),IE不支持getUserMedia。
答案 0 :(得分:7)
如果要在Internet Explorer以外的浏览器中进行调试,则需要使用该浏览器的开发人员工具并相应地设置断点。或者,您可以使用console.log()和/或console.warn()来获取代码中对象的状态。 Visual Studio不能也无法理解不同JavaScript和渲染引擎(V8,Blink,Gecko等)的实现 - 也不应该尝试这样做。这些引擎在六个星期的发布周期中移动得如此之快,IDE将成为您应该测试的实际平台的完全误导代理。
Firefox和Chrome都允许您保留控制台内容,而不是页面重新加载/导航,而Browser Link in Visual Studio等工具可以让您同时在多个浏览器中进行测试 - 之后检查控制台结果是否有错误(交互会有在每个浏览器中单独测试。)
如果您正在测试可能允许您在笔记本电脑或台式机上使用开发工具(我相信Chrome)同时在多个平板电脑和/或手机上进行测试的移动设备Adobe Shadow。否则桌面浏览器开发工具允许您使用相同的浏览器调试在连接的移动设备上运行的页面,或者 - 在Firefox的情况下 - 也在设备上Chrome instance。
非常值得了解用于前端调试和故障排除的浏览器开发工具,因为这些工具比Visual Studio提供的功能更强大。免费的CodeSchool课程Discover DevTools(专注于Chrome DevTools并由Google / Chrome赞助)可以帮助您发现客户端开发人员工具的一些功能,并且许多界面和技术将广泛适用于其他浏览器开发工具。
如果您想测试一些您无法使用的设备,无法在系统上安装的浏览器(例如Windows上的Safari),或者只是一个新版本或旧版本,而这些版本无法安装在本地安装的版本旁边那么像Browserstack这样的服务允许您在托管虚拟机中执行此操作。 BrowserStack有一个Visual Studio extension可以帮助连接到本地运行的项目。