Как добавить новые функции в типы массивов с помощью веб-пакета - PullRequest
0 голосов
/ 27 января 2020

Я пытаюсь перенести мой код из обычного js в веб-пакет.

В прошлом я добавлял новые функции для типов по умолчанию Array или Object, которые я затем использовал в мой код Я хотел бы также сохранить эти новые функции глобальными в веб-пакете. Как я могу сказать, например, webpack изменить тип Array и добавить новые функциональные возможности в каждый файл, не импортируя эту строку кода каждый раз, когда я хочу его использовать?

Это как я это делал в прошлом:

Array.prototype.clean = function(deleteValue) {
  for (var i = 0; i < this.length; i++) {
    if (this[i] == deleteValue) {
      this.splice(i, 1);
      i--;
    }
  }
  return this;
}; 

Ответы [ 2 ]

0 голосов
/ 27 января 2020

Вы можете поместить свои новые функциональные возможности прототипа, такие как Array.prototype.clean, в верхнюю часть определенной вами записи веб-пакета, вероятно, index.js.

Так что они будут доступны для всего вашего проекта.

если у вас есть файл с несколькими записями, вы можете создать файл prototype.js со всеми вашими прототипами и поместить его в качестве первого файла записи.

0 голосов
/ 27 января 2020

Из веб-пакета Shimming Globals docs :

Мы не рекомендуем использовать глобалы! Вся концепция веб-пакета заключается в том, чтобы обеспечить более модульную разработку внешнего интерфейса. Это означает написание изолированных модулей, которые хорошо содержатся и не полагаются на скрытые зависимости (например, глобальные). Пожалуйста, используйте эти функции только при необходимости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...