Troubleshooting
Cannot import ESM
Vitedge works using ES Modules in modern Node.js (>=12). Make sure the Node version is compatible and that you have "type": "module" in your package.json.
Cannot use Tailwind/PostCSS
Rename their config files to postcss.config.cjs and tailwind.config.cjs. Then, specify the Tailwind config route in PostCSS config:
module.exports = {
plugins: {
tailwindcss: { config: './tailwind.config.cjs' },
autoprefixer: {},
},
}
Code generation from strings disallowed for this context
This happen if you (or your dependencies) run eval or related in a worker environment. Unsafe evaluations are not supported. For example, vue-i18n was affected by this issue.
Some library/component crashes during SSR
Have a look at Conditional Rendering section
Vite is not bundling my dependencies correctly
There are some known issues in Vite resolution/bundling behavior (e.g. with aws-sdk package). If that's your case, try to mark your dependency as "external" to avoid bundling it. Later, Webpack or ESBuild will try to bundle it when creating the final worker script.
For example, if you are importing aws-sdk in your backend function, you can mark it as external in the plugin options as follows:
vitedge({
functions: {
build: {
rollupOptions: {
external: ['aws-sdk'],
},
},
},
})