Maf*_*elu 13 javascript svg rollup node.js
如果我将 svg 文件导入到 ES6 模块中,如何在汇总中处理它?我目前有这样的事情(我正在做的简单例子):
import next from '../assets/next.svg';
export default () => console.log('Here is some Svg: ! ', next);
Run Code Online (Sandbox Code Playgroud)
我有一个如下所示的汇总配置:
import babel from 'rollup-plugin-babel';
import resolve from 'rollup-plugin-node-resolve';
import commonjs from 'rollup-plugin-commonjs';
export default {
entry: 'src/app.js',
dest: 'build/app.min.js',
format: 'iife',
sourceMap: 'inline',
plugins: [
babel({
exclude: 'node_modules/**',
}),
resolve({
jsnext: true,
main: true,
browser: true,
}),
commonjs(),
],
};
Run Code Online (Sandbox Code Playgroud)
然后我收到以下错误:
无法解析 /home/magnferm/projects/slask/rollup-test/src/chill/index.js 中的“../assets/next.svg”
路径没有问题,但 rollup 似乎不知道如何处理 svg 文件。有没有我可以使用的插件,或者我是否必须以某种方式区别对待它?
Maf*_*elu 16
有一个插件。它称为@rollup/plugin-image,它可以处理 .svg 等格式的导入:
import babel from '@rollup/plugin-babel';
import resolve from '@rollup/plugin-node-resolve';
import commonjs from '@rollup/plugin-commonjs';
import image from '@rollup/plugin-image';
export default {
entry: 'src/app.js',
dest: 'build/appn.min.js',
format: 'iife',
sourceMap: 'inline',
plugins: [
babel({
exclude: 'node_modules/**',
}),
resolve({
jsnext: true,
main: true,
browser: true,
}),
commonjs(),
image()
],
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15526 次 |
| 最近记录: |