实习生:链接操作没有回报承诺

时间:2015-09-11 14:48:55

标签: javascript promise automated-tests intern

使用Intern我必须从页面中获取一个隐藏的json对象,然后构建一个字典。在此之后,查询这个字典我应该对DOM执行其他操作。 问题是我不知道如何绑定这两个东西,因为我希望第二个操作在第一个操作完成后执行。

我的代码类似于:

    var self._formMap = null;

if(self._formMap === null || Object.keys(self._formMap).length === 0) {
    return remote.findByXpath(selector)
        .getAttribute('value')
        .then(function(value) {
            var jsonValue = JSON.parse(value);
            var formMap = {};
            for (var item in jsonValue) {
                if (jsonValue.hasOwnProperty(item)) {
                    var key = jsonValue[item][0].split(/[\/]+/).pop();
                    formMap[key] = item;
                }
            }
            return formMap;
        }).then(function (map) {
                self._formMap = map;
                return _super_.setInputInForm.call(this, [..., formMap, ..]); // function in another file, but that shares the same remote object.
        });

}

在第二步中,当我调用setInputInForm时,它就像遥控器未定义一样。是不是因为我在第一步中返回了formMap?可能是一个承诺的问题? 此外,我想隔离第一步,并将其放入一个函数中,总是返回一个承诺。

感谢。

0 个答案:

没有答案