报错:Error: Transform failed with 1 error: error: Invalid option in transform() call: "jsx"
解决办法:
- 由于旧的 esbuild 版本,选项“jsx”无效
2 .手动安装最新版本的 esbuild 来解决它,但我认为最好也更新插件的 pacakge.json 版本
rollup-plugin-esbuild 版本:找到 插件 package.json 中的 esbuild手动修改esbuild 版本:0.12.7
3.安装 yarn add --dev rollup-plugin-esbuild@2.5.0 可以解决
报错:如下图
解决方法
parckage.json 配置 !这个很重要
"devDependencies": {
"@vue/compiler-sfc": "3.0.0",
"rollup-plugin-esbuild": "2.5.0",
"rollup-plugin-scss": "2.6.0",
"rollup-plugin-terser": "7.0.2",
"rollup-plugin-vue": "6.0.0-beta.10",
"sass": "1.32.11",
"vite": "1.0.0-rc.1"
}
rollup.config.ts文件配置
import esbuild from 'rollup-plugin-esbuild'
import vue from 'rollup-plugin-vue'
const scss = require('rollup-plugin-scss');
const dartSass = require('sass');
import { terser } from "rollup-plugin-terser"
export default {
input: 'src/lib/index.ts',
output: [{
globals: {
vue: 'Vue'
},
name: 'Gulu',
file: 'dist/lib/gulu.js',
format: 'umd',
plugins: [terser()]
}, {
name: 'Gulu',
file: 'dist/lib/gulu.esm.js',
format: 'es',
plugins: [terser()]
}],
plugins: [
scss({ include: /\.scss$/, sass: dartSass }),
esbuild({
include: /\.[jt]s$/,
minify: process.env.NODE_ENV === 'production',
target: 'es2015'
}),
vue({
include: /\.vue$/,
})
],
}