【发布时间】:2020-04-04 05:58:07
【问题描述】:
我正在尝试使用导入buffer 的base58。我都安装了:
- https://github.com/calvinmetcalf/rollup-plugin-node-builtins
- https://github.com/calvinmetcalf/rollup-plugin-node-globals
并将它们添加到插件列表中,但似乎没有定义缓冲区。老实说,我不完全确定我在这里做什么,使用这两个废弃的包似乎比预期的要复杂。
如果需要,我可以提供一个示例,但也许它已经有了一个简单的答案。
我的rollup.config.js如下(我删除了一些不重要的部分):
import alias from "@rollup/plugin-alias";
import copy from "rollup-plugin-copy";
import json from "rollup-plugin-json";
import globals from "rollup-plugin-node-globals";
import builtins from "rollup-plugin-node-builtins";
import svelte from "rollup-plugin-svelte";
import resolve from "rollup-plugin-node-resolve";
import replace from "@rollup/plugin-replace";
import commonjs from "rollup-plugin-commonjs";
import livereload from "rollup-plugin-livereload";
import { terser } from "rollup-plugin-terser";
// ...
export default [
{
input: "src/background/",
output: {
sourcemap: true,
format: "iife",
name: "background",
file: "build/background/bundle.js"
},
plugins: [
builtins(),
globals(),
// If you have external dependencies installed from
// npm, you'll most likely need these plugins. In
// some cases you'll need additional configuration —
// consult the documentation for details:
// https://github.com/rollup/rollup-plugin-commonjs
resolve({
browser: true,
dedupe: importee =>
importee === "svelte" || importee.startsWith("svelte/")
}),
commonjs(),
// Watch the `build` directory and refresh the
// browser on changes when not in production
//! production && livereload("build"),
// If we're building for production (npm run build
// instead of npm run dev), minify
production && terser()
],
watch: {
clearScreen: true,
chokidar: {
usePolling: true
}
}
}];
【问题讨论】:
-
在挖掘了依赖之后,我注意到问题不在于
rollup-plugin-node-globals提供的缓冲区实现,而是base58的使用。 -
你解决过这个问题吗?