Ecmascript 6 将arrow函数声明为变量

Ecmascript 6 将arrow函数声明为变量,ecmascript-6,Ecmascript 6,在以前使用webpack和babel编写es2015的项目中,我能够声明一个名称如下的arrow函数: x = () => console.log("test"); fetch = () => { fetch(`https://www.data.com`) .then(response => response.json() { console.log(response); })} 使用实际函数,它将如下所示: x = ()

在以前使用webpack和babel编写es2015的项目中,我能够声明一个名称如下的arrow函数:

x = () => console.log("test");
fetch = () => {
      fetch(`https://www.data.com`)
      .then(response => response.json() {
        console.log(response);
      })}
使用实际函数,它将如下所示:

x = () => console.log("test");
fetch = () => {
      fetch(`https://www.data.com`)
      .then(response => response.json() {
        console.log(response);
      })}
然而,当尝试在browserify和gulp配置中使用此代码时,我得到了错误

意外标记,应为


你能告诉我为什么这个代码只有在我使用webpack时才有效吗?

你的代码中有语法错误
response=>response.json(){}
是无效的JS

要记录响应,请执行以下操作:

fetch('https://www.data.com')
  .then(response => console.log(response))
要在记录响应之前将其转换为JSON,请执行以下操作:

fetch('https://www.data.com')
  .then(response => response.json())
  .then(json => console.log(json))

因为Webpack被配置为使用Babel,而Browserify没有?如果您对Gulp和Browserify有问题,请指定它们的配置方式。当前状态下的问题与主题无关,无法回答。应使用相同的.babelrc文件“预设”对其进行相同的配置:[“es2015”、“react”、“stage-1”]')。我已经在使用导入和导出,因此我认为这意味着gulp和browserify已经配置为使用es 2015。但是他们是吗?请提供它们的配置。您使用的节点版本是什么
response=>response.json(){}
这里发生了什么?在我看来这是个语法错误。