jsonix
jsonix copied to clipboard
sourceIsEvt is not defined - when used with TypeScript and target ES6
Hello,
i'm trying to use jsonix in an Angular 8 application, wenn setting the TypeScript target to ES6/ES2015 there is an ReferenceError because 'sourceIsEvt' was not declared before it is used.
jsonix.js:34 Uncaught ReferenceError: sourceIsEvt is not defined
at Object.Jsonix.Util.extend (jsonix.js:34)
...
which is pointing to nodejs/scripts/jsonix.js
and i think the same in scripts/src/main/javascript/org/hisrc/jsonix/Jsonix/Util.js
I don't see any further usage of this variable in the code so is it possible to declare it with 'var' or is there any reason why this variable should by global?
And if it should be global then maybe it could be declared like this:
var windowIsDefined = typeof window !== 'undefined' && window !== null;
if (windowIsDefined) {
window.sourceIsEvt = typeof window.Event === "function" && source instanceof window.Event;
if (!window.sourceIsEvt && source.hasOwnProperty && source.hasOwnProperty('toString')) {
destination.toString = source.toString;
}
}
@boeckMt not sure it's actually a global
a simple var
infront seems to do the trick
@Knochenmark, yes I used the same trick.
But I think this repo is no longer actively developed. Maybe someone of the forkers is willing to fix bugs.
@Knochenmark, yes I used the same trick.
But I think this repo is no longer actively developed. Maybe someone of the forkers is willing to fix bugs.
Fixed, PR: https://github.com/highsource/jsonix/pull/266 To test: https://www.npmjs.com/package/@opentempl/jsonix/v/3.0.0-issues-238