Uglify модуль узла с веб-пакетом - PullRequest
0 голосов
/ 21 марта 2020

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

Я собираюсь использовать этот модуль в vue js и в бэкэнде с express.

This вот что я получил:

Файлы:

sr c

  • index. js
  • Dog. js

dist

  • main. js

webpack.config. js

module.exports = {
  target: 'node',
  mode: 'production',
};

index. js

const Dog = require("./Dog");
module.exports = {
  Dog
}

Dog. js

class Dog{
  //Typical Dog stuff
}
module.exports = Dog;

anotherFile. js (в root проекта)

//This works
const Dog = require("./src/index").Dog;
//This does'nt works
const Dog2 = require("./dist/main").Dog;

let dog1 = new Dog("Doberman");
let dog2 = new Dog2("Shibainu");

Ошибка : enter image description here

1 Ответ

2 голосов
/ 09 апреля 2020

Вы не должны беспокоиться об укрупнении кода на стороне сервера. У вас действительно нет проблем с пропускной способностью, которые вы испытывали бы во внешнем интерфейсе.

Что касается производительности, это ускорит синтаксический анализ вашего кода, что важно для внешнего интерфейса: вы пытаетесь перейти к интерактивности настолько быстро, насколько это возможно. возможный. Но это не имеет большого значения для бэкэнда, где вы амортизируете стоимость запуска в течение времени выполнения приложения. И вы уже уродили интерфейс, чтобы сэкономить пропускную способность.

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

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