在 NodeJS 服务器中使用导入 [英] Using Import In NodeJS server

查看:54
本文介绍了在 NodeJS 服务器中使用导入的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

目前我在 nodejs 服务器中的所有模块都作为 require() 导入,即:

At the moment all my module in my nodejs server are imported as require() ie:

let path = require('path');
let express = require('express');
let http = require('http');
let app = express();

但是我下面的教程显示它们导入为:

However the tutorial I am following shows them imported as:

import express from 'express'
import path from 'path'

抛出错误:

SyntaxError: Unexpected token import

我的 webpack.config.js 设置为:

My webpack.config.js is set up as:

module: {
    rules: [
        {
            test: /\.js?$/,
            use: 'babel-loader',
            exclude: /node_modules/
        }
    ]
}

在 bablerc 中:

In bablerc:

{
  "presets": ["es2015", "react"]
}

我的软件包版本:

   "babel-core": "^6.7.6",
    "babel-loader": "^6.2.4",
    "babel-preset-es2015": "^6.6.0",
    "babel-preset-react": "^6.5.0",

   "react": "^15.0.1",

  "devDependencies": {
    "babel-cli": "^6.18.0",
    "babel-preset-env": "0.0.3",
    "webpack": "^2.2.1",
    "webpack-dev-middleware": "^1.10.1",
    "webpack-dev-server": "^2.4.1",
    "webpack-hot-middleware": "^2.17.1"
  }

导入适用于我所有的 React 组件文件,但不适用于 server.js.如何将我的服务器切换到从 require 导入?

Import works in all my react components files, just not server.js. How do I switch my server over to Import from require?

推荐答案

它适用于 webpack 情况,因为代码是通过 babel 运行的.你可以通过 babel 运行你的 node.js 代码.

It works in the webpack situation because the code is run through babel. You can run your node.js code through babel.

如果你没有安装 babel cli

Install the babel cli if you don't have it

npm install --save-dev babel-cli

然后像这样运行你的代码:

Then run your code like this:

./node_modules/.bin/babel-node server.js

或者放在 package.json 中.

Or put it in package.json.

{
  "scripts": {
    "start": "babel-node server.js"
  }
}

这篇关于在 NodeJS 服务器中使用导入的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆