Javascript promise返回意外的令牌错误

sak*_*vel 1 javascript request node.js promise

您好我正在尝试在nodeJS中使用带有promise的请求模块.

这是我的剧本

require('promise');
var request = require('request');           
const requestget = function (url) {
  return  new Promise((resolve, reject) {
    request(url, function (error, response, body) {
        if (!error && response.statusCode == 200) {
            resolve(body);

         } else {
            reject(error);
         }
       });
  });
}
requestget('http://www.modulus.io').then(console.log);
Run Code Online (Sandbox Code Playgroud)

但我收到以下错误.

/home/xyz/reques.js:14
  return  new Promise((resolve, reject) {
                                        ^
SyntaxError: Unexpected token {
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:906:3
Run Code Online (Sandbox Code Playgroud)

我真的不知道这个剧本有什么不对,任何人都可以帮助我.

mey*_*er9 5

在这一行,您需要确保定义一个函数.您可以使用箭头函数执行此操作,如下所示:

return new Promise((resolve, reject) => {
Run Code Online (Sandbox Code Playgroud)

箭头函数具有语法(param1, param2) => {function body},这与说法相同function(param1, param2) {function body}.你可以在这里阅读更多相关信息.