require('babel/register') 不起作用 [英] require('babel/register') doesn't work

查看:38
本文介绍了require('babel/register') 不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在带有 Babel 转译器的客户端上用 ES6 编写了同构应用程序.我希望我的快速服务器与客户端代码具有相同的 ES6 语法.

I have isomorphic app written in ES6 on client with Babel transpiler. I want my express server to have the same ES6 syntax as client code.

不幸的是 require('babel/register') 不起作用..

Unfortunately require('babel/register') doesn't work..

require('babel/register'); // doesn't work
// require('babel-core/register); doesn't work..

const env = process.env.NODE_ENV || 'development';
const port = process.env.NODE_PORT || 1995;

const http = require('http');
const express = require('express');
const address = require('network-address');

let app = express();

app.set('port', port);
app.use(express.static(path.join(__dirname, 'public')));

app.get('*', (req, res) => {
   res.send('Hello!');
});

http.createServer(app).listen(app.get('port'), function () {
   console.info('Demo app is listening on "%s:%s" env="%s"', address(), app.get('port'), env);
});

推荐答案

require('babel/register') 不转译调用它的文件.如果您希望将 server.js 包含在即时转译中,您应该使用 babel-node 执行它(Babel 的 CLI 替换 node).

require('babel/register') doesn't transpile the file it is called from. If you want server.js to be included in on-the-fly transpilation, you should execute it with babel-node (Babel's CLI replacement for node).

此处为例,请参阅我的回答.

See my answer here for an example.

这篇关于require('babel/register') 不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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