Я пытаюсь использовать модуль, скомпилированный с Babel в проекте TypeScript. Но у меня есть ошибка со статическими свойствами и методами.Как установить перечислимое свойство для Babel
Это помощник TypeScript для extends
. Как видите, он использует for..in
.
var __extends = (this && this.__extends) || function (d, b) {
for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
Есть ли способ установить enumerable
для статических свойств/методов Бабеля?
Вы можете вручную 'Object.defineProperty (XmlObject, 'LoadXml', {enumerable: true})'. Спецификация ES6 диктует, что они не перечислимы. – loganfsmyth
Вы говорите, что у вас есть ошибка, но не ошибка. Статические методы не перечислены в спецификации ES6 (см. 21.b. в разделе [14.5.14 Семантика времени выполнения: ClassDefinitionEvaluation] (http://www.ecma-international.org/ecma-262/6.0/#sec-runtime-semantics -classdefinitionevaluation)). Ваш скриншот показывает, что 'Test.LoadXml()' правильно вызывает 'XmlObject.LoadXml' (он записывает« Успех »). Что вы пытаетесь достичь? –
@Jordan У меня нет результата в Test.LoadXml(). Это ошибка, потому что она должна иметь эту функцию. – Microshine