未使用汇总定义要求

require is not defined using rollup

我有以下 rollup.config.js:

import commonjs from 'rollup-plugin-commonjs';
import nodeResolve from 'rollup-plugin-node-resolve';

export default {
  input: 'input.js',
  output: {
    file: 'output.js',
    format: 'iife'
  },
  plugins: [
    nodeResolve(
      {
        jsnext: true,
        main: true
      }
    ),
    commonjs({ include: 'hello.js' })
  ]
}

我有以下 input.js 其中 requires hello.js:

var hello = require('./hello.js');

console.log(hello);

hello.js就是:

module.exports = 'hello';

我希望 output.js 不包含 require 语法并将其替换为字符串 'hello'.

我仍然看到 var hello = require('./hello.js');

如何用汇总插件替换这一行? (我认为这就是 commonjs 插件的用途)。

在此先感谢您的帮助!

解决了。

问题出在我的 input.js 文件上。

插件不支持require,但插件支持module.exports

input.js 更改为:

import x from './hello.js';

console.log(x);

成功了。