meteor-astronomy icon indicating copy to clipboard operation
meteor-astronomy copied to clipboard

IE 10 (and prior) and Class.getName break the entire app

Open manuelro opened this issue 7 years ago • 1 comments

Long time no talk, Jagi. I hope you're doing well.

I have some bad news regarding compatibility issues with IE's recent version (up to IE10). It seems you're using a Class.getName and IE is for some reason not supporting it. The offending code is at /lib/core/class.js, line 42 inside a forEach block.

The error: El objeto no acepta la propiedad o el método 'getName'

Which translates to something like The object does not accept the property or method 'getName'

See the code below:

// File: /lib/core/class.js
// Init the class schema and schema definition.
  Module.forEach((module) => {
    /*Line 42*/ module.onInitSchema(Class.schema, Class.getName());
    module.onInitDefinition(Class.definition, Class.getName());
  });

Astronomy is supporting IE11 and Edge.

Environment: Astronomy version: 2.4.3 Meteor version: 1.4.3.2 Node version: 6.9.2

manuelro avatar May 12 '17 20:05 manuelro

From what I remember it's a limitation of IE to inherit static properties of function/class. It's closely related with Babel transpilation. And I'm using static methods heavily because it's very handy. There is some workaround for that http://babeljs.io/docs/usage/caveats/#internet-explorer-classes-10-and-below- but it would have to be enabled and used not only in Astronomy but also in the developer's code.

lukejagodzinski avatar May 15 '17 07:05 lukejagodzinski