类构造函数中的Winjs异步调用

毛里齐奥在丹麦

我在WinJS中有一个类,在构造器中有一个属性。该属性调用异步方法以读取其值。

这是代码:

var MyClass = WinJS.Class.define(
    // The constructor function.
    function () {
        var self = this;

        Windows.Storage.ApplicationData.current.localFolder.getFolderAsync("MYFOLDER")
        .done(function (folder) {
            self.myFolder = folder;
        },
        function (error) {
            self.myFolder = null;
        });
    },
    // The set of instance members.
    {
        myFolder: null,

    });

然后,当我实例化该类时:

var myClass = new MyClass();

之所以这样做,是因为我实例化了该类,而myClass.myFolder将始终对我可用,而无需重新运行代码。现在,我的问题显然是在实例化该对象之后,myClass.myFolder不会立即可用。

如何确保仅在具有值之后才访问myClass.myFolder属性?

我可以在属性中返回一个Promise,但是基本上我不确定如何在构造函数中使用Promise。

用户名

为了使该属性成为一个承诺,您需要做的就是将getFolderAsync的结果分配给该属性。

var MyClass = WinJS.Class.define(
// The constructor function.
function () {
    var self = this;

    this.myFolder = Windows.Storage.ApplicationData.current.localFolder.getFolderAsync("MYFOLDER");
},
// The set of instance members.
{
    myFolder: null,

});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在页面构造函数中异步调用Web服务

来自分类Dev

在OCaml中异步调用函数

来自分类Dev

异步调用模板函数

来自分类Dev

在构造函数中调用异步函数

来自分类Dev

在类中调用异步函数

来自分类Dev

试图在javascript中异步调用函数(使用angularjs)

来自分类Dev

如何构造对 API 的异步调用?

来自分类Dev

类构造函数中的异步数据加载

来自分类Dev

类构造函数中的异步数据加载

来自分类Dev

如何创建包含异步调用的Javascript(es5)构造函数

来自分类Dev

如何异步调用AWS Lambda函数

来自分类Dev

Knockout计算函数内部的异步调用

来自分类Dev

lua同步调用C异步函数

来自分类Dev

异步调用的函数语法

来自分类Dev

lua同步调用C异步函数

来自分类Dev

如何异步调用AWS Lambda函数

来自分类Dev

PHP 异步调用多个函数

来自分类Dev

异步调用函数的 NodeJs 错误

来自分类Dev

从构造函数中调用类方法

来自分类Dev

在类定义中调用成员构造函数

来自分类Dev

在抽象类中调用构造函数

来自分类Dev

在抽象类中调用构造函数

来自分类Dev

类中未调用 PHP 构造函数

来自分类Dev

替代在类构造函数中调用线程

来自分类Dev

Django中的API中的异步调用

来自分类Dev

从构造函数调用的异步方法

来自分类Dev

从异步调用中仅获取对象

来自分类Dev

翡翠模板中的异步调用

来自分类Dev

iOS:在方法中包装异步调用