Кажется, что v3.10.0 ломает мою сборку, журналы веб-пакета ниже:
ERROR in ./src/pages/score/components/current/no-join/index.less
Module build failed (from ./node_modules/[email protected]@mini-css-extract-plugin/dist/loader.js):
ModuleBuildError: Module build failed (from ./node_modules/[email protected]@less-loader/dist/cjs.js):
Class constructor FileManager cannot be invoked without 'new'
in undefined (line undefined, column undefined)
at runLoaders (/home/admin/build/node_modules/[email protected]@webpack/lib/NormalModule.js:313:20)
at /home/admin/build/node_modules/[email protected]@loader-runner/lib/LoaderRunner.js:367:11
at /home/admin/build/node_modules/[email protected]@loader-runner/lib/LoaderRunner.js:233:18
at context.callback (/home/admin/build/node_modules/[email protected]@loader-runner/lib/LoaderRunner.js:111:13)
Все в порядке при переходе на версию 3.9.0 , пожалуйста, изучите эту проблему и постарайтесь исправить ее как можно скорее.
У меня та же проблема, вы должны изменить 'package.json' => "less": "~ 3.9.0", предельную версию
+1
+1
+1!
Срочно~
+1
та же проблема
+1 версия меньше 3.9.0 меньше загрузчик 4.1.0
Можно убрать ^ версии less в package.json и переустановить v3.9.0.Это должно решить проблему.Можно попробовать.Хотя версия залочена,из-за ^ будет скачана последняя версия 3. последняя версия должна быть проблематичной.
+1
+1
const shortname = new this.less.FileManager().extractUrlParts(filename).filename;
Вызвано этим подобным кодом?
omg, я ограничил версию до 3.9.0, работает.
То же самое. npm автоматически подхватывает этот «второстепенный» релиз и ломает все мои сборки. :(
+1
v3.10.0 та же ошибка
+1
торопиться
+1
просто используйте [email protected] все будет в порядке
@lixiaohulee , если вы не используете less-loader, и все будет не так
+1
+1
У меня та же проблема (((
+1
у меня та же проблема :/
Это проблема более старой версии less-loader
, а не Less, которая неправильно наследовала файловый менеджер Less. less-loader
5.0 делает. См.: https://github.com/less/less.js/issues/3414#issuecomment-522223041 .
Реши это?
Реши это?
Вы можете взять меньше зависимостей в вашем package.js и переустановить зависимости последней второстепенной версии.
+1
Оооооооооооо!!! Почему бы не решить проблему, так как многие проекты заблокировали версию less-loader
с 4.1.0
.
Мы используем antd, который сломался: https://github.com/ant-design/ant-design/issues/18343 .
Как мы можем решить проблему?
@montanaflynn сохранить более старую среду и создать карту заблокированных зависимостей с npm-shrinkmap.json
может быть хорошим выбором.
@ aleen42 спасибо, надеюсь, это скоро исправят, я не очень хорошо знаком со всеми вещами npm.
@montanaflynn Я много раз встречал, когда мы ломались во время сборки из-за разблокированных зависимостей, включая подзависимости. Это запутанная проблема NPM для большинства разработчиков FE.
@aleen42 мы исправили это, добавив
"devDependencies": {
"less-loader": "^5.0.0"
}
Почему возникает эта проблема?
Версия Node.js не подходит?
Это не проблема версии узла.
@montanaflynn вы также можете решить проблему, временно указав подверсию для less-loader
:
devDepedencies: {
"less-loader": "4.1.0",
"less": "3.9.0"
}
Обновите с помощью
yarn upgrade less@^3.10.1 less-loader@^5.0.0
используйте "less": "~3.9.0"
+1
+1
Кстати, для тех, кто наблюдает за этой веткой, я снова открою и, вероятно, отправлю исправление позже сегодня для более старых версий less-loader
, просто чтобы все было менее раздражающим.
Это один из тех крайних случаев, когда фактическое использование синтаксиса Class
для замены функции-прототипа выдает ошибку без new
. Предполагается, что FileManager всегда вызывается с помощью new
(это задокументированный API), а более старые версии less-loader
, по-видимому, этого не делали.
_Опять же, если вы смотрите ветку, простое обновление до less-loader
5.0 устраняет эту несовместимость._
Я думаю, что для less-loader
лучше понизить свои зависимости ниже 3.9.0
.
@ aleen42 Зачем это нужно, если последняя версия less-loader
работает нормально?
Предположим, что некоторым проектам может не потребоваться риск обновления высокого уровня с 4.x
до 5.x
.
+666
Может кто-нибудь попробовать: https://github.com/less/less.js/pull/3421?
Филиал находится по адресу: https://github.com/matthew-dean/less.js/tree/release/v3.10.2 .
Проблема при тестировании заключается в том, что собственные тесты less-loader
не работают на 3.9.0, поэтому неясно, чего ожидать. Но с экспортированными классами Less, преобразованными в функции, те же самые ошибки, по крайней мере, запускаются в less-loader
, поэтому неясно, является ли это ожидаемым результатом или нет. Также неясно, _как_ или почему эта ошибка возникает в Less loader v4 и не возникает в v5, за исключением того, что это может быть проблема Webpack в v4?
В любом случае, если люди могут подтвердить, что эта ветвь как зависимость Less не вызывает проблемы с классом, я ее объединяю.
+1 версия меньше 3.9.0 меньше загрузчик 4.1.0
+1
+1
Вручную укажите меньшую версию:
нпм я меньше @ 3.9.0 -D
Ok!!!
Исправить путем понижения до 3.9.0
Непосредственно перед тем, как я удаляю node_modules и набираю npm i
, возникает эта ошибка. Таким образом, последняя версия 3.10.1
все еще имеет эту ошибку. Я выбираю понижение до 3.9.0
Как мне исправить эту ошибку, если я использую @zeit/next-less? Любая помощь приветствуется.
@ezgitek
npm i @zeit/next-less
npm i [email protected]
https://forum.vuejs.org/t/vue-cli/72008/7
"меньше": "^3.10.1",
"менее загрузчик": "^5.0.0",
это работает
Объединено: https://github.com/less/less.js/pull/3421
Похоже, никто из тех, у кого были проблемы с less-loader v4, не хотел тестировать [3.10.2] 🤷♂, но в моем тестировании тесты Less-loader v4 не работали по-разному с 3.10.1 (проблема с конструктором класса) и сломали то же самое с этим PR . Итак..... не уверен, что это исправляет это, но должно быть не хуже?
Я объединил это возможное исправление с мастером (но еще не выпустил его в NPM). Тем не менее, хотелось бы, чтобы кто-то подтвердил перед выпуском вместо +1.
Я могу подтвердить, что я только что попробовал текущую основную ветку less локально с less-loader ^ 4.1.0, и мой проект снова может быть собран. 👍
Спасибо за вашу работу над этим!
@jenniferneale Спасибо за подтверждение! Я опубликую в NPM позже сегодня, не могу сделать это с работы.
+1
Исправлена ли эта проблема в версии 3.10.3?
@ H4ngman Должно быть. Откройте заново, если нет.
Самый полезный комментарий
У меня та же проблема, вы должны изменить 'package.json' => "less": "~ 3.9.0", предельную версию