Scherz, durch JSDom Ich stelle mir vor, hat document.createRange
nicht definiert. Wie kann ich dieses Verhalten überschreiben oder bereitstellen?Mocking document.createRange für Scherz
Die Version, die wir für unsere eigene JSDom + Mokka Setup schrieb (vor allen Tests lief) sieht wie folgt aus:
global.Range = function Range() {};
const createContextualFragment = (html) => {
const div = document.createElement('div');
div.innerHTML = html;
return div.children[0]; // so hokey it's not even funny
};
Range.prototype.createContextualFragment = (html) => createContextualFragment(html);
// HACK: Polyfil that allows codemirror to render in a JSDOM env.
global.window.document.createRange = function createRange() {
return {
setEnd:() => {},
setStart:() => {},
getBoundingClientRect:() => {
return { right: 0 };
},
getClientRects:() => [],
createContextualFragment,
};
};
Gibt es eine Möglichkeit, dies zu schaffen, zu scherzen?
funktioniert gut, danke! – scniro