当我在 Visual Studio 2012 中的 javascript 中使用 console.log("Some text output") 进行 Windows 8 Metro 编程时,文本被发送到哪里?在哪里可以查看?我已经打开了“输出”面板,但没有看到日志文本。
我没有使用正确的功能吗?我必须使用另一个功能来打印到输出吗?
当我在 Visual Studio 2012 中的 javascript 中使用 console.log("Some text output") 进行 Windows 8 Metro 编程时,文本被发送到哪里?在哪里可以查看?我已经打开了“输出”面板,但没有看到日志文本。
我没有使用正确的功能吗?我必须使用另一个功能来打印到输出吗?
要实际查看 JavaScript 控制台,请DEBUG > Windows > JavaScript Console
在 Visual Studio 菜单中选择。然后你可以使用good oldconsole.log()
来写,但是你也可以使用相关的WinJS
函数:
使用以下WinJS.log()
命令创建函数后需要记录一些内容WinJS.Utilities.startLog()
:
WinJS.Utilities.startLog({type: "info", tags: "custom" });
WinJS.log("my message", "info", "custom");
WinJS
以下是有关日志记录功能的一些附加信息:
startLog(options)
:配置一个记录器,将包含指定标签的消息写入 JavaScript 控制台。
options
对象必须包含 a ,它type
应该是error
、warn
或之一。除非您想捕获所有日志条目,否则还要添加到包含您要记录的以空格分隔的标签列表的对象。info
perf
tags
WinJS.log(message, tags, type)
: 该功能默认不存在。但是,它是由您的startLog()
调用创建的。您也可以手动创建它,但是因为您想使用登录到控制台startLog()
是要走的路。
如果您需要在实时环境中调试应用程序,您可以使用简单的屏幕上的 console.log 替换,您可以使用 ~ 键激活它。
源代码在这里: https ://gist.github.com/4012355
我可能正在回复一篇旧帖子,或者您可能已经找到了实现您的目的的方法,但是我尝试了 console.log() 和 WinJS.log() 并且 javascript 控制台似乎都返回了“未定义”。另外,我确保使用“调试器;” 该代码正在执行的语句。现在我在这里假设您需要记录以进行调试,那么我现在更愿意“打印”到我的屏幕上的是:
<body>
<label id="lblMessage">test</label>
</body>
然后在 JS 中:
function f(message) {
document.getElementById('lblMessage').innerText = message;
}
(然后,在需要的地方调用这个函数——在我的例子中是 app.onactivated 函数)
您还可以通过 EventViewer 查看日志。以下是启用此功能的步骤:
打开事件查看器
导航到应用程序和服务日志
展开 Microsoft/Windows/AppHost
左键单击以选择管理员
右键单击管理员,然后选择查看 => 显示分析和调试日志