使用节点汇总如何生成ES2015输出

时间:2018-10-12 11:34:15

标签: ecmascript-6 rollupjs

我有2个JS文件,我想将它们捆绑在一起,这样我就可以将其上传到第3方系统,并且在外部仍然可以使用公用的fns进行重用。 第三方系统需要代码在ES2015中,并且捆绑文件给我错误 错误:Compilation failed: Unexpected token import

app.js

const { AuthenticationClient } = require('auth0');
const BodyParser = require('body-parser');
const Express = require('express');
// some more stuff here
exports.app = app;

index.js     import { app } from './app.js';

当我运行汇总op文件时,它看起来像

    import auth0 from 'auth0';
    import bodyParser from 'body-parser';
    import express from 'express';
    import requestPromise from 'request-promise';
    // stuff

rollup.config.js

import commonjs from 'rollup-plugin-commonjs';
export default [
    {
        input: 'webtask/forgot-password/index.js',
        output: {
            format: 'es',
        },
        external: ['auth0', 'body-parser', 'express', 'request-promise', 'webtask-tools'],

        plugins: [
            commonjs({
                namedExports: { './webtask/forgot-password/app.js': ['named' ] }  
            })
        ]
    }
];

这可能吗?我应该回到旧版汇总吗?

1 个答案:

答案 0 :(得分:0)

使用format: 'cjs'es(实际上不推荐使用esm)是为了a)将自身捆绑在一起的库,以及b)可以本地加载模块的浏览器。