Babel注册不会转储包含在node_modules中的自己的文件

我正在尝试使用我在ES6中编写的一些代码,这些代码需要被转发。 当我运行我自己的服务器时,我想不必提前单独进行转储,只需包含文件server.js

 require("babel-register")({ignore: false, presets: ["es2015"]}); const AlexaAppServer = require("alexa-app-server"); AlexaAppServer.start({ port: process.env.PORT || 8080, app_dir: "apps", }); 

然后我有apps/skill/index.js

 import alexa from "alexa-app"; const skill = new alexa.app("skill"); skill.launch((req, res) => res.say("hello")); skill.intent("TestIntent", ["test"], (req, res) => res.say("test")); export const express = skill.express; 

express导出是为了当alexa-app-server需要文件时: https : //github.com/alexa-js/alexa-app-server/blob/master/index.js#L68

当我运行我的服务器代码时,我得到:

 Error loading app [/Users/acrites/projects/mobq/usbank/functions/usbank/index.js]: SyntaxError: Unexpected token import 

这表明文件没有被转发。 alexa-app-servernode_modules ,但是我使用ignore: false 如babel文档中所示 ,包含node_modules但由于包含的文件实际上并不在node_modules所以我甚至不确定这是否有必要。 使用babel-node server.js做同样的事情。 然而,运行babel-node apps/skill可以正常工作。

有没有办法让babel转储在node_modules中本身需要的文件?