【问题标题】:UWP: How to access ApplicationDataUWP:如何访问应用程序数据
【发布时间】:2017-07-13 23:34:14
【问题描述】:

我正在尝试在启动时为我的 UWP-JS 应用程序创建一个设置值。
我正在关注这个Documentation

这是我目前得到的:

(function () {
    "use strict"

    //Initialization
    var localSettings = Windows.Storage.ApplicationData.current.localSettings;
    // Save value
    localSettings.Values["exampleSetting"] = "example";
    // Retrieve value
    $('p').text(localSettings.Values["exampleSetting"]);
})();

当我启动应用程序时,它进入“中断模式”,在给定代码的第 7 行出现以下异常:

0x800a138f - JavaScript 运行时错误:无法设置未定义或空引用的属性“exampleSetting”


我做错了什么?

【问题讨论】:

  • 属性是驼峰式,所以Values应该是values。这遵循常见的 JS 约定。

标签: javascript visual-studio winapi uwp local-storage


【解决方案1】:

您缺少current 属性,您引用的示例中也提到了该属性。所以你的电话应该是:

(function () {
    "use strict"

    //Initialization
    var localSettings = Windows.Storage.ApplicationData.current.localSettings;
    // Save value
    localSettings.values["exampleSetting"] = "example";
    // Retrieve value
    $('p').text(localSettings.values["exampleSetting"]);
})();

编辑:
Windows.Storage.ApplicationData后面的属性和方法名需要小写开头。

【讨论】:

  • 是的,我已经尝试过了,这给了我以下错误:0x800a138f - JavaScript runtime error: Unable to get property 'LocalSettings' of undefined or null reference
  • @johnue 查看我的编辑。这只是一个小写问题。但是你仍然需要调用'current'
  • 事实上我现在收到以下错误:0x800a138f - JavaScript runtime error: Unable to set property 'exampleSetting' of undefined or null reference
  • 啊,我忘了把Values也改成values。我如何知道这些方法必须以小写还是大写开头?
  • @jonhue 很高兴我能帮助你。对于小写的事情:我通常用打字稿编写我的 WinJS 应用程序,我有一个声明文件,这有助于这些事情。但我认为你可以遵循规则,类名 [这里 ApplicationData] 之后的所有内容都用小写写
猜你喜欢
  • 2019-10-02
  • 2018-07-10
  • 2015-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-26
  • 2019-07-25
  • 1970-01-01
相关资源
最近更新 更多