I'm trying to get simpledom working in codebase with two environments. One with ts-node and another with webpack and ts-loader with "esModuleInterop": true,
With simple-dom@1.3.0 I could do
import { Document, HTMLSerializer } from 'simple-dom'
And it worked in all environments but has a bug where I had to include dom in my tsconfig libs configuration to get typescript to compile.
For the upgrade to 1.4.0, the previous code works with ts-node but webpack changes the export from simple-dom to be a single export named simple-dom
This works but only in webpack with ts-loader@5.3.3 and not with ts-node
const {
simpleDom: { Document, HTMLSerializer },
} = require('simple-dom')
The following work with nothing... errors are from webpack.
import simpleDom from 'simple-dom'
console.log({ simpleDom })
// { simpleDom: undefined }
import { simpleDom } from 'simple-dom'
console.log({ simpleDom })
// { simpleDom: undefined }
import simpledom from 'simple-dom/dist/modules/es2017'
console.log({ simpledom })
// { simpledom: undefined }
import { Document, HTMLSerializer } from 'simple-dom/dist/modules/es2017'
// [2019-02-07T17:44:36.740Z] ERROR (gradius): a.HTMLSerializer is not a constructor
// TypeError: a.HTMLSerializer is not a constructor
// at Object.<anonymous> (/Users/wizard/src/gradius/dist/webpack-test/index.js:1493:696)
I'm not sure where to go from here. Any ideas?
Thanks!
I'm trying to get simpledom working in codebase with two environments. One with
ts-nodeand another withwebpackandts-loaderwith"esModuleInterop": true,With
simple-dom@1.3.0I could doAnd it worked in all environments but has a bug where I had to include
domin my tsconfiglibsconfiguration to get typescript to compile.For the upgrade to
1.4.0, the previous code works withts-nodebut webpack changes the export fromsimple-domto be a single export namedsimple-domThis works but only in webpack with
ts-loader@5.3.3and not withts-nodeThe following work with nothing... errors are from webpack.
I'm not sure where to go from here. Any ideas?
Thanks!