Webpack -API我无法将数据传递给index.js

时间:2017-04-08 19:23:49

标签: javascript webpack

我试图从我正在做的api请求中获取数据, 我使用Webpack,一个文件正在发出get请求,我想使用index.js上的数据,但我无法得到它。 这是带有get请求的代码:

request= require('superagent/lib/client')
module.exports=

request.get("http://www.omdbapi.com/?s=Batman&page=2").then(function 
(response) {
return response

我如何在index.js中获得响应?

由于

1 个答案:

答案 0 :(得分:0)

基本上你要处理的是promises,它本质上是异步的,你需要等到请求完成才能获得请求中的文本,在这种情况下你可以做的就是使用promises并传递在请求完成时执行callback,例如:

var request= require('superagent/lib/client')

module.exports = function request( onFinished, onError ){
  request.get("http://www.omdbapi.com/?s=Batman&page=2")
  .then( onFinished )
  .catch( onError );
}

// Use file.js
makeRequest = require('path/file');
makeRequest(function(result){
   console.log(result); // result from the request.
}, function( error ) {
   console.log( 'There was an error' );
})

或者您可以使用asyncawait

var request= require('superagent/lib/client')

module.exports = function async request( onFinished, onError ){
  let response = '';
  try {
    response = await request.get("http://www.omdbapi.com/?s=Batman&page=2");
  } catch ( e ) {
    console.log( error );
  }
  return response;
}

// Use file.js
makeRequest = require('path/file');
console.log( makeRequest() );

目前支持哪个:

  • Chrome 55
  • Firefox 52
  • Opera 42
  • Safari 10
  • 节点7.8