-
Notifications
You must be signed in to change notification settings - Fork 37
Open
Description
Hey,
is it possible to use habitat() for dynamically imported ES modules like:
import habitat from "preact-habitat";
...
const module = await import("/js/module.js"); // module.js is a compiled preact component
const { render } = habitat(module);my use case is that:
- I want to init multiple widgets on a site
- A server response decides which widgets to init
- I only want to request/load the widgets that are supposed to be mounted
I tried:
const modules: Record<Modules, string> = {
widget1: "/js/modules/1.js",
widget2: "/js/modules/2.js",
widget3: "/js/modules/3.js",
};
const module = await import(modules[feature]); // feature is "widget1" | "widget2" | "widget3"
const { render } = habitat(module.default); // each widget is a bundled preact functional component with default export
render({ selector: "..." })But I keep getting errors a la:
TypeError: Cannot read properties of undefined (reading '__H')
When I import the module directly, it works ofc
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels