Сериализация класса ES6 в веб-пакете DefinePlugin - PullRequest
0 голосов
/ 12 октября 2019

Я сериализую класс с помощью веб-пакета «DefinePlugin», но функции, определенные в классе, не сериализуются, а только свойства. Если я сериализую функции с помощью вызова toString(), то моя функция сериализуется следующим образом "function () { [native code] }". Я не уверен, что это потому, что я связываю функцию в конструкторе: this.myFunc = this.myFunc.bind(this). Есть ли обходной путь?

Вот мой код функции:

myFunc() {
    const key = 'k1'
    return this.getProperty(key)
}

А вот объявление глобальной переменной в webpack.config.js:

new webpack.DefinePlugin({
    _GLOBAL_VAR_: serialize(new MyClass()) //or:
    //_GLOBAL_VAR_: JSON.stringify(new MyClass())
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...