我如何回复承诺或等待要求?

时间:2017-12-21 11:47:45

标签: javascript webpack vue.js vuejs2 webpack-2

这是我的vuejs + webpack项目

如何返回承诺或等待require加载文件?

exmaple:

var myfile= require('./assets/myjson.json') // a big json file
console.log(myfile) //this sometime not printed correctly

有时console.log无法在控制台中正确打印对象

所以我想知道是否有可能像这样回复承诺

require('./assets/myjson.json').then(function(){ 
   // big file loaded completetly
   console.log(myfile) 
}

我必须在require回调后处理对象,我找不到办法做到这一点

对象在控制台中打印如下 enter image description here

2 个答案:

答案 0 :(得分:0)

Webpack就是节点,这意味着它只是Javascript。

您可以将文件API与Promise API一起使用,以获得所需的结果。

在这个问题中有很多好消息。

Parse large JSON file in Nodejs

答案 1 :(得分:0)

你可以这样做:

<强> 1。创建承诺

    var promise = new Promise(function (resolve, reject) {
        // do a thing, possibly async, then…

        if (/* everything turned out fine */) {
            resolve("Stuff worked!");
        }
        else {
            reject(Error("It broke"));
        }
    });

<强> 2。使用承诺

    promise.then(function(result) {
       console.log(result); // "Stuff worked!"
    }, function(err) {
       console.log(err); // Error: "It broke"
    });

我希望有用!