2013-11-22 46 views

回答

1

一般来说,如果它散发出来的API Windows。*命名空间,那么它通常也可以在JavaScript中使用(除了Windows.UI.Xaml。*和其他一些不需要的,因为JS具有内部API,就像使用JSON一样)。

在这种情况下,PackageVersion来自Windows.ApplcationModel。 JS中的诀窍是你必须使用完全限定的标识符,因为不存在使用语句的(我们经常为命名空间分配一个局部变量并引用它来保存输入)。所以你的情况,你会做这样的事情

var currentVersion = Windows.ApplicationModel.Package.current.id.version. 

或者你可以指定一个命名空间变量,如果你用了很多:

var am = Windows.ApplicationModel; 
var currentVersion = am.Package.current.id.version; 

对于WinRT的任何事情,只是去文档页面,例如http://msdn.microsoft.com/en-us/library/windows/apps/windows.applicationmodel.package.current.aspx,然后单击语法下的JavaScript选项卡查看具体信息。如果您没有获得JS的语法表示,那么该特定的API不会投影到JS中。

另外,了解WinJS主要是一组辅助API和控件。您通常会使用这两个 WinRT API和WinJS API(尽管技术上后者是可选的)。它们并不相互排斥,除了取代WinRT中XAML API的WinJS UI部件。

如果您正在进入JavaScript选项,我的免费电子书MSPress,Programming Windows Store Apps, in HTML, CSS, and JavaScript应该有助于帮助您,尤其是在WinJS方面。

+0

它结束了'新的Windows.ApplicationModel.PackageId()。版本'更新与此珍闻,并得到接受!非常感谢,这很有启发。 – ohmusama

+0

实际上,那是“不可构造的”。我不知道如何继续。 – ohmusama

+0

最终解决方案是'Windows.ApplicationModel.Package.current.id.version'请更新您的答案。谢谢。 – ohmusama