关于nodejs import的问题 求助 nodejs论坛登录不了 谢谢大家

#1

最近在看react的视频 我看别人的项目的时候或者自己写 其他文件都没事 一到写node的时候 import express 就报错 import 就报错 问了好多人不知道怎么回事 我的node版本6.3.0的 不应该出现这种问题吧 我在github 下载的react的项目 也报错就是这个地方 快着急死了 求大家帮帮忙 分析下哪里的原因啊

import express from "express"
^^^^^^
SyntaxError: Unexpected token import

这是报错原因 谢谢大家了

#2

6.0 虽然支持 93% 的 ES6 特性,但 import 刚好在那 7% 中。

#3

那怎么办 好多 react 项目都是 import 啊

#4

我现在 下载了一个6.6.0二进制的 但是切换不过来 晕菜都不知道为什么 能帮帮我吗? 那他们的项目是怎么做的呢!!

#5

babel

#6

已经配置了 就是不行 我在 github 下载的项目 在自己电脑运行 就报错 就是 import的问题

#7

import 的确是个问题,但是有办法解决,使用 babel 将 ES6 语法转译为 ES5 语法。

在线转译:http://babeljs.io/repl

转译前:

import express from 'express'

转译后:

'use strict';

var _express = require('express');
var _express2 = _interopRequireDefault(_express);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
#8

我的意思 是 我在 github 下载下来的项目 自己打开看看 也是报错

#9

在package.josn 文件文件的script 中的start 或者别的前面加上babel-node就可以了

#10

可以说细一点吗 我第一次做这种

#11

由于node目前不支持es6的import语法,你可以使用require这样的commonJs语法,可以使用babel-node运行js脚本,我在package.json中这样运行脚本

"start": "babel-node tools/server.js"

babel-node代替node

#12

兄弟 react 中 打包时候 有 babel 转过变成了 ES5了