这是我的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回调后处理对象,我找不到办法做到这一点
答案 0 :(得分:0)
Webpack就是节点,这意味着它只是Javascript。
您可以将文件API与Promise API一起使用,以获得所需的结果。
在这个问题中有很多好消息。
答案 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"
});
我希望有用!