I figured out a sort of hacky way to use hammerjs in nodejs by using the library jsdom. Hammer expects there to be some global browser objects in order to do stuff. I wonder if there is a better way to do this?
import { JSDOM } from "jsdom";
global.document = new JSDOM("").window.document;
global.HTMLElement = global.document.defaultView.HTMLElement;
import * as hammer from "htmlhammer";
Object.assign(global, hammer);
let items = [{ value: 1 }, { value: 2 }];
const mydiv = div(
{ style: { color: "red" } },
h1("I am the title"),
a({ href: "#" }, "Click me!"),
table(tr({ $for: items }, (item) => td(item.value))),
);
// to get raw html string, do
mydiv.outerHTML;
export default mydiv;
I like hammer's api, but if there's a better library to let me gen html serverside like this, let me know.
I figured out a sort of hacky way to use hammerjs in nodejs by using the library
jsdom. Hammer expects there to be some global browser objects in order to do stuff. I wonder if there is a better way to do this?I like hammer's api, but if there's a better library to let me gen html serverside like this, let me know.