Referenceerror showerror is not defined как исправить

В процессе подписи произошла ошибка: ReferenceError: ShowError is not defined

Форум КриптоПро
 » 
Общие вопросы
 » 
Общие вопросы
 » 
В процессе подписи произошла ошибка: ReferenceError: ShowError is not defined


Offline

Ndanielyan

 


#1
Оставлено
:

13 августа 2019 г. 0:32:42(UTC)

Ndanielyan

Статус: Новичок

Группы: Участники

Зарегистрирован: 13.08.2019(UTC)
Сообщений: 1
Российская Федерация
Откуда: Вронеж

В процессе подписи произошла ошибка: ReferenceError: ShowError is not defined

Одним прекрасным днем появилась ошибка…не могу зайти на площадку РТС-тендер.


Вверх


Offline

Александр Лавник

 


#2
Оставлено
:

13 августа 2019 г. 10:51:06(UTC)

Александр Лавник

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,205
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 723 раз в 675 постах

Автор: Ndanielyan Перейти к цитате

В процессе подписи произошла ошибка: ReferenceError: ShowError is not defined

Одним прекрасным днем появилась ошибка…не могу зайти на площадку РТС-тендер.

Здравствуйте.

— Операционная система?

— Версия КриптоПро CSP в формате A.B.CDEF?

— Браузер?

— Скриншоты ошибок?

— Скриншот при попытке подписания на тестовой странице?

Техническую поддержку оказываем тут
Наша база знаний


Вверх


Offline

ДмитрийАЭРО

 


#3
Оставлено
:

19 августа 2019 г. 21:40:09(UTC)

ДмитрийАЭРО

Статус: Новичок

Группы: Участники

Зарегистрирован: 19.08.2019(UTC)
Сообщений: 8
Российская Федерация
Откуда: г. Брянск

Здравствуйте при установке сертификата возникли проблемы выбивает ошибку 800Bb0109 что делать и как у вас добавлять скриншоты?


Вверх


Offline

Александр Лавник

 


#4
Оставлено
:

20 августа 2019 г. 10:37:11(UTC)

Александр Лавник

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,205
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 723 раз в 675 постах

Автор: ДмитрийАЭРО Перейти к цитате

Здравствуйте при установке сертификата возникли проблемы выбивает ошибку 800Bb0109 что делать и как у вас добавлять скриншоты?

Здравствуйте.

1) Уточните, пожалуйста:

— Какая используется операционная система?

— Какая используется версия КриптоПро CSP в формате A.B.CDEF?

— Что именно Вы делаете (+ приложите скриншоты)?

2) Скриншоты можно добавить к сообщению как файл (пиктограмма скрепки) и/или как ссылку на внешний ресурс (пиктограмма пейзажа рядом с пиктограммой скрепки).

Техническую поддержку оказываем тут
Наша база знаний


Вверх


Offline

ДмитрийАЭРО

 


#5
Оставлено
:

20 августа 2019 г. 20:23:41(UTC)

ДмитрийАЭРО

Статус: Новичок

Группы: Участники

Зарегистрирован: 19.08.2019(UTC)
Сообщений: 8
Российская Федерация
Откуда: г. Брянск

Windows 7;КриптоПро CSP GOST R;В запросе на сертификат нажимаю установить Sertifikat.jpg (284kb) загружен 8 раз(а). Sertifikat1.jpg (316kb) загружен 4 раз(а). Sertifikat2.jpg (315kb) загружен 3 раз(а). и выбивает ошибку


Вверх


Offline

Александр Лавник

 


#6
Оставлено
:

21 августа 2019 г. 11:10:35(UTC)

Александр Лавник

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,205
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 723 раз в 675 постах

Автор: ДмитрийАЭРО Перейти к цитате

Windows 7;КриптоПро CSP GOST R;В запросе на сертификат нажимаю установить Sertifikat.jpg (284kb) загружен 8 раз(а). Sertifikat1.jpg (316kb) загружен 4 раз(а). Sertifikat2.jpg (315kb) загружен 3 раз(а). и выбивает ошибку

Здравствуйте.

Установите сертификат удостоверяющего центра в хранилище Доверенные корневые центры сертификации.

Предположу, что нужный Вам сертификат можно скачать по ссылке.

Техническую поддержку оказываем тут
Наша база знаний


Вверх


Offline

ДмитрийАЭРО

 


#7
Оставлено
:

21 августа 2019 г. 17:12:12(UTC)

ДмитрийАЭРО

Статус: Новичок

Группы: Участники

Зарегистрирован: 19.08.2019(UTC)
Сообщений: 8
Российская Федерация
Откуда: г. Брянск

К сожалению не помогло


Вверх


Offline

Александр Лавник

 


#8
Оставлено
:

22 августа 2019 г. 10:05:55(UTC)

Александр Лавник

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,205
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 723 раз в 675 постах

Автор: ДмитрийАЭРО Перейти к цитате

К сожалению не помогло

Здравствуйте.

Что именно Вы сделали?

Приложите вывод команд в cmd Windows:

Код:

"c:Program FilesCrypto ProCSPcertmgr.exe" -list -store uroot | findstr "Russian Agricultural Bank CA"

Код:

"c:Program FilesCrypto ProCSPcertmgr.exe" -list -store mroot | findstr "Russian Agricultural Bank CA"

Отредактировано пользователем 22 августа 2019 г. 10:15:48(UTC)
 | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний


Вверх


Offline

ДмитрийАЭРО

 


#9
Оставлено
:

22 августа 2019 г. 20:13:55(UTC)

ДмитрийАЭРО

Статус: Новичок

Группы: Участники

Зарегистрирован: 19.08.2019(UTC)
Сообщений: 8
Российская Федерация
Откуда: г. Брянск

Сделал все как писали открыл вашу ссылку установил в доверенные корневые сертификаты. При нажатии на установить сертификат выбивает ошибку теперь правда другая 80092004


Вверх


Offline

Александр Лавник

 


#10
Оставлено
:

23 августа 2019 г. 10:53:25(UTC)

Александр Лавник

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,205
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 723 раз в 675 постах

Автор: ДмитрийАЭРО Перейти к цитате

Сделал все как писали открыл вашу ссылку установил в доверенные корневые сертификаты. При нажатии на установить сертификат выбивает ошибку теперь правда другая 80092004

Здравствуйте.

Судя по ошибке, запрос на сертификат создавался или на другом компьютере или под другим пользователем на этом компьютере.

В этом случае Вы можете скачать сертификат по ссылке (в строке Вы получили запрошенный сертификат.) и установить его согласно варианту 2 инструкции.

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

Техническую поддержку оказываем тут
Наша база знаний


Вверх

Пользователи, просматривающие эту тему

Guest

Форум КриптоПро
 » 
Общие вопросы
 » 
Общие вопросы
 » 
В процессе подписи произошла ошибка: ReferenceError: ShowError is not defined

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.


Offline

qwertyui

 


#1
Оставлено
:

25 января 2018 г. 18:50:47(UTC)

qwertyui

Статус: Новичок

Группы: Участники

Зарегистрирован: 25.01.2018(UTC)
Сообщений: 1
Российская Федерация
Откуда: Белгорорд

_ShowError is not defined выводится такая ошибка хотя флешка с подписью вставлена. При попытке войти выводится это» Вставьте ключевой носитель
«rutoken_lt_33485b79″.» и статус что носитель отсутствует.


Вверх

WWW


Offline

Андрей Писарев

 


#2
Оставлено
:

25 января 2018 г. 18:55:53(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,756
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1840 раз в 1423 постах

Автор: qwertyui Перейти к цитате

_ShowError is not defined выводится такая ошибка хотя флешка с подписью вставлена. При попытке войти выводится это» Вставьте ключевой носитель
«rutoken_lt_33485b79″.» и статус что носитель отсутствует.

Здравствуйте.

ПускВсе программыКРИПТО-ПРОКриптоПРО CSP
СервисПротестироватьПо сертификату — аналогичный диалог (вставьте rutoken_lt_33485b79)?

Переустановите сертификат с привязкой к контейнеру:
https://www.cryptopro.ru…uction_manual_csp_r3.pdf

из контейнера: раздел 2.5.2
или из файла: раздел 2.5.3 с автопоиском контейнера.

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

Андрей Писарев

 


#3
Оставлено
:

25 января 2018 г. 18:58:53(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,756
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1840 раз в 1423 постах

получить сам сертификат в виде файла (.cer) для переустановки можно так:
ПускВсе программыКРИПТО-ПРОСертификаты
В Личном хранилище находите свой сертификат, нажимаете правой кнопкой -> Все задачи-> Экспорт -> Нет, не экспортировать закрытый ключ -> Далее -> Указываете где сохранить файл.

Далее этот сертификат устанавливаете по инструкции — раздел 2.5.3

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW

Пользователи, просматривающие эту тему

Guest

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

При программировании в JavaScript, jQuery или Angular JS кодеры очень часто натыкаются на «Uncaught ReferenceError is not defined». Как правило, это происходит когда $, будь она переменной или методом, была задействована, но не была корректно определена. В сегодняшней статье мы посмотрим с вами на различные причины появления ошибки и методы их решения.

Содержание

  • Uncaught ReferenceError is not defined — что это такое?
  • Что вызывает появление ошибки
  • 1. Библиотека jQuery была загружена некорректно
  • 2. jQuery повреждена
  • 3. jQuery не была загружена перед кодом JavaScript
  • 4. Файл JqueryLibrary имеет атрибуты async или defer
  • 5. Конфликт с другими библиотеками (prototype.js, MooTools или YUI)
  • 6. Проблемы с плагином jQuery в WordPress
  • Заключение

Uncaught ReferenceError is not defined — что это такое?

Uncaught ReferenceError is not defined

Как мы упомянули ранее, символ $ может использоваться для определения функции. Самая распространенная функция jQuery() называется $(document).ready(function()). Например

jQuery(“#name”).hide()

$(“#name”).hide()

Код выше применяется для скрытия элемента с помощью id=”name” через метод hide(). Во второй строчке вы можете видеть, что символ $ используется вместо метода jQuery(). 

Ошибка возникает тогда, когда вы пытаетесь получить доступ или использовать метод/переменную без символа $. При выполнении JavaScript в браузере перед пользователем вылетает ошибка, а все потому, что переменная не была определена (a variable being used is not defined). Вам необходимо задать переменную через var.

Вам также нужно определить функцию с помощью function() {}, чтобы избежать этой же ошибки.

Что вызывает появление ошибки

Давайте взглянем на другие причины появления рассматриваемой ошибки:

  • Библиотека jQuery была загружена некорректно либо повреждена.
  • Файл библиотеки jQuery был загружен после JavaScript.
  • У библиотеки JavaScript имеются атрибуты async или defer.
  • Конфликт с другими библиотеками, например, prototype.js, MooTools или YUI.
  • Проблемы с плагином jQuery в WordPress.

1. Библиотека jQuery была загружена некорректно

Uncaught ReferenceError is not defined возникает в том случае, когда к методу jQuery был сделан запрос, но jQuery не была загружена на то время. Предположим, что вы работали без сети, но попытались загрузить или сослаться на код jQuery из Интернета, доступа к которому у вас нет, а следовательно jQuery не будет работать. Вы увидите ошибку, если исходник вашего кода находится на Google CDN, но последняя недоступна.

Лучшее решение в данном случае — это проверить сетевое подключение перед выполнением скрипта. Как альтернатива, вы можете загрузить файлы jQuery на свою систему и включить их непосредственно в сам скрипт. Для этого воспользуйтесь следующей строчкой:

<script src=”/js/jquery.min.js”></script>

2. jQuery повреждена

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

3. jQuery не была загружена перед кодом JavaScript

jQuery не была загружена перед скриптом. Если не сделать все как положено, скрипт, написанный в JavaScript, не будет работать — гарантированы постоянные ошибки.

Пример:

<html><head>
<script type=”text/javascript”>
$(document).ready(function () {
$(‘#clickme’).click(function(){
alert(“Link clicked”);
});
});
</script>
<script src=”https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js” ></script>
</head>
<body>
<a href=”#” id=”clickme”>Click Here</a>
</body>
</html>

В этом коде jQuery загружен после скрипта. Так делать не нужно, а нужно вот так:

<html><head>
<script src=”https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js” ></script>
<script type=”text/javascript”>
$(document).ready(function () {
$(‘#clickme’).click(function(){
alert(“Link clicked”);
});
});
</script>
</head><body>
<a href=”#” id=”clickme”>Click Here</a>
</body></html>

4. Файл JqueryLibrary имеет атрибуты async или defer

async — это булевый (логический) атрибут. При взаимодействии с атрибутом происходит загрузка скрипта с его последующим выполнением. Если парсер HTML не заблокирован во этого процесса, рендеринг странички будет ускорен.

Без атрибута async файлы JavaScript будут выполняется последовательно. Файлы JC будут загружены и запущены, затем начнется выполнение другого кода. В это время парсер HTML будет заблокирован и рендеринг веб-странички будет замедлен.

В случае атрибута defer скрипт будет выполнен после парсинга страницы. Это также булевый атрибут, который задействуется параллельно со внешними скриптами. Вот вам небольшой пример:

<!doctype html>
<html><head>
<script src=”https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js” async defer></script>
<script type=”text/javascript”>
$(document).ready(function () {
$(‘#clickme’).click(function(){
alert(“Link clicked”);
});

});
</script>
</head>
<body>
<a href=”#” id=”clickme”>Click Here</a>
</body>
</html>

Именно вышеуказанные атрибуты обеспечивают асинхронную загрузку библиотеки jQuery. Чтобы избежать появления Uncaught ReferenceError is not defined, нужно избавиться от атрибутов async и defer в скрипте.

5. Конфликт с другими библиотеками (prototype.js, MooTools или YUI)

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

<!– Putting jQuery into no-conflict mode. –>
<script src=”prototype.js”></script>
<script src=”jquery.js”></script>
<script>
var $j = jQuery.noConflict();
// $j is now an alias to the jQuery function; creating the new alias is optional.
$j(document).ready(function() {
$j( “div” ).hide();
});
// The $ variable now has the prototype meaning, which is a shortcut for
// document.getElementById(). mainDiv below is a DOM element, not a jQuery object.
window.onload = function() {
var mainDiv = $( “main” );
}
</script>

В коде выше $ ссылается на свое оригинальное значение. Вы сможете использовать $j и название функции jQuery.

Но есть еще одно решение! Вы можете добавить этот код в шапку своей странички индекса:

<script>
$=jQuery;
</script>

Корректный код:

<!doctype html>
<html><head>
<script src=”https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js”></script>
<script type=”text/javascript”>
$(document).ready(function () {
$(‘#clickme’).click(function(){
alert(“Link clicked”);
});
});
</script>
</head>
<body>
<a href=”#” id=”clickme”>Click Here</a>
</body>
</html>

6. Проблемы с плагином jQuery в WordPress

Uncaught ReferenceError is not defined — настоящий кошмар для веб-разработчиков, использующих jQuery в WordPress. Появление ошибки способно полностью вывести из строя сайт. Главная причина — это конфликт между двумя или более плагинами jQuery. Например, есть старая версия плагина на jQuery, у которого $ — его имя, и какой-то сторонний плагин, который не использует $ в качестве шортката для jQuery и может иметь совершенно другое значение.

И вот из-за такой разницы и получается конфликт. Два значения $, отвечающих за совершенно разные вещи, не могут сосуществовать в одной программе. Вы гарантированно получите ошибку.

Решение: 

  • Убедитесь, что библиотека jQuery загружена перед JavaScript. Плюс постарайтесь использовать наиболее актуальную версию jQuery.
  • Библиотека jQuery уже доступна в WordPress, так что вам не нужно прикладывать ее с помощью CDN/URL. Вы можете использовать функцию wp_enqueue_script(), чтобы включить jQuery в ваш файл.

Заключение

Появления Uncaught ReferenceError is not defined можно избежать, если придерживаться всего, что мы указали выше. Еще одна причина появления ошибки — это неправильно указанный путь к jQuery. Возможно, в расположении файла где-то есть опечатка либо сам файл был перемещен/удален из своей оригинальной директории. Если же используете онлайн-версию библиотеки, убедитесь, что с вашим сетевым подключением все в порядке.


Я установил модули узлов с помощью npm install, затем попытался выполнить gulp sass-watch в командной строке. После этого я получил ответ ниже.

[18:18:32] Requiring external module babel-register
fs.js:27
const { Math, Object, Reflect } = primordials;
                                  ^

ReferenceError: primordials is not defined

Пробовал это перед глотком сасс-часы

npm -g install gulp-cli

Ответы:



Мы столкнулись с той же проблемой при обновлении устаревшего проекта в зависимости от gulp@3.9.1Node.js 12.

Эти исправления позволяют использовать Node.js 12 с gulp@3.9.1переопределением graceful-fsверсии 4.2.3.

Если ваш проект активно не разрабатывается и вы используете npm

Создайте npm-shrinkwrap.jsonфайл, содержащий это:

{
  "dependencies": {
    "graceful-fs": {
      "version": "4.2.3"
    }
  }
}

Зафиксируйте этот npm-shrinkwrap.jsonфайл. И затем выполните, npm installкоторый обновит npm-shrinkwrap.jsonфайл.

К сожалению, это решение больше не работает, если вы npm installснова. Смотрите другие решения ниже.

Если ваш проект находится в активной разработке и вы используете Yarn v1

Yarn v1 поддерживает преобразование пакета в определенную версию . Вам необходимо добавить resolutionsраздел в ваш package.json:

{
  // Your current package.json contents
  "resolutions": {
    "graceful-fs": "4.2.3"
  }
}

Спасибо @jazd за этот способ решить проблему.

Если ваш проект находится в активной разработке и вы используете npm

Используя npm-force-resolutionsв качестве сценария предварительной установки, вы можете получить аналогичный результат, как с Yarn v1. Вам нужно изменить ваш package.json следующим образом:

{
  // Your current package.json
  "scripts": {
    // Your current package.json scripts
    "preinstall": "npx npm-force-resolutions"
  },
  "resolutions": {
    "graceful-fs": "4.2.3"
  }
}

npm-force-resolutionsперед изменением package-lock.jsonфайла изменится graceful-fsна желаемую версию install.

Если вы используете пользовательский .npmrcфайл в своем проекте, и он содержит прокси-сервер или пользовательский реестр, вам нужно перейти npx npm-force-resolutionsна него, npx --userconfig .npmrc npm-force-resolutionsпоскольку npxна данный момент .npmrcфайл текущей папки по умолчанию не используется.

Происхождение проблемы

Эта проблема связана с тем, что gulp@3.9.1 зависит от того, graceful-fs@^3.0.0какой fsмодуль monkeypatches Node.js.

Раньше он работал с Node.js до версии 11.15 (которая является версией из ветки разработки и не должна использоваться в производстве).

graceful-fs@^4.0.0больше не поддерживает Monkeypatch Node.js fs, что делает его совместимым с Node.js> 11.15.

Обратите внимание, что это не постоянное решение, но оно помогает, когда у вас нет времени на обновление gulp@^4.0.0.







Используйте следующие команды и установите узел v11.15.0 :

npm install -g n

sudo n 11.15.0

будет решать

ReferenceError: первичные значения не определены в узле

По рекомендации @Terje Norderhaug @Tom Corelis отвечает.







Исправить это за 1 минуту:

Просто следуйте этим шагам . Я на Windows 10, и это отлично сработало для меня!

  1. В той же директории, где у вас есть, package.jsonсоздайте npm-shrinkwrap.jsonфайл со следующим содержимым:
    {
      "dependencies": {
        "graceful-fs": {
            "version": "4.2.2"
         }
      }
    }
  1. Запустите npm install, и не волнуйтесь, он будет обновляться npm-shrinkwrap.jsonс кучей контента.

  2. Запустите, gulpчтобы начать проект.







Используйте следующие команды для установки node v11.15.0и gulp v3.9.1:

npm install -g n

sudo n 11.15.0

npm install gulp@^3.9.1
npm install 
npm rebuild node-sass

Решим эту проблему:

ReferenceError: primordials is not defined in node







Использование NVM для управления используемой версией узла, выполнение следующих команд помогло мне:

$ cd /to/your/project/
$ nvm install lts/dubnium
$ nvm use lts/dubnium
$ yarn upgrade # or `npm install`





Gulp 3.9.1 не работает с Node v12.xx, и если вы обновитесь до Gulp 4.0.2, вам придется полностью изменить gulpfile.js с новым синтаксисом (Series & Parallels). Поэтому лучше всего перейти на Node V 11.xx, 11.15.0 работал для меня нормально. Просто используя следующий код в терминале:

nvm install 11.15.0

nvm use 11.15.0 #just in case it didn't automatically select the 11.15.0 as the main node.

nvm uninstall 13.1.0

npm rebuild node-sass

Ура!



была такая же ошибка и , наконец , исправить , что при обновлении всех пакетов , а затем упомянул ту же версию узла двигателя и НПМ версию в package.jsonкак в моей локальной рабочей системы.

 "engines": {
    "node": "10.15.3",
    "npm": "6.9.0"
 }

я получал эту ошибку при развертывании на героку.

для дополнительной проверки поддержки героку


Понижение до стабильного узла исправило эту проблему для меня, как это произошло после того, как я обновился до узла 12

sudo n 10.16.0




TL: DR

Gulp 3.*не работает на узле 12.*или выше. Вы должны понизить Node или обновить Gulp.

Если у вас мало времени, понизьте Node до версии v11. * Или ниже; если вам нужны более новые функции, и у вас есть время, чтобы по возможности исправить загрузку сломанных зависимостей, обновите Gulp до версии 4. * или выше!

Как уже упоминали другие, Gulp 3.*не поддерживается на Node 12или выше, поэтому вам придется понизить версию своего Node до 11.*или ниже, ИЛИ обновить Gulp до 4.0.

В конечном счете, лучший вариант зависит от того, сколько у вас есть времени, поскольку обновление Gulp дает преимущества более чистых файлов gulp и встроенного контроля над выполнением задач, выполняемых последовательно или параллельно , но также полагается на то, что вы переписываете свой gulpfile в новый синтаксис, и может (читай: вероятно будет — см. конец этого комментария) может вызвать конфликты с некоторыми зависимостями.


Понижение Узла

Это самый простой и быстрый вариант. Особенно, если вы используете n или nvm , поскольку они позволяют очень быстро установить и переключаться между версиями Node.

Установка версии Node на N

n 10.16.0

Установка версии узла на NVM

nvm install 10.16.0

После того, как вы это сделали, вам может понадобиться перестроить ваши зависимости npm или, в качестве альтернативы, удалить и вашу node_modulesпапку, и ваш package-lock.jsonфайл, и переустановить ваши зависимости. Хотя, если вы просто возвращаетесь к уже существующей версии Node, у вас, вероятно, все будет хорошо.


Обновление Gulp

Как упоминалось выше, это более трудоемкая задача, но она может принести выгоды в долгосрочной перспективе. Например, Node 12теперь представил встроенную поддержку модулей ES (за экспериментальным флагом) и полную поддержку в Node 13.

Возможно, вам придется обновить Node, чтобы использовать это, заставляя вас обновить Gulp. Или вы можете просто захотеть воспользоваться преимуществами Gulp 4, так как он предлагает лучший и более эффективный контроль над задачами написания.

Об этом уже есть ряд статей, поэтому я не буду более подробно останавливаться на деталях, но повторюсь — это не простая работа . В зависимости от размера вашего проекта, может потребоваться заметное переписывание, и у вас могут быть зависимости, которые нарушаются. Если у вас не хватает времени, вы должны просто понизить рейтинг узла, хотя бы временно.


Но у меня уже есть Gulp 4, и он все еще не работает!

Если, как и я, вы уже используете Gulp 4+ (я использовал Gulp 4.0.2, изначально на Node 10) и недавно обновили (я обновился до Node 13.8.0), если вы все еще получаете проблему, это может быть потому, что зависимость зависит от старая версия Gulp, и это попадает в конвейер.

В моем случае gulp-combine-mqбыла зависимость с использованием Gulp 3.9.*. Отключение этой задачи в моем gulpfile позволило Gulp запустить снова.

Если это произойдет, у вас есть несколько вариантов: вы можете,

  1. Обойтись без плагина, если это не является абсолютно необходимым
  2. Найти альтернативу,
  3. Исправить плагин

Само собой разумеется, если у вас есть несколько плагинов, которые используют более старую версию Gulp — особенно, если эти плагины жизненно важны для вашего приложения — это то, где может быть огромный дополнительный промежуток времени, потраченный на обновление Gulp (отсюда и предупреждения выше).

Если это произойдет, лучше всего понизить Node, по крайней мере, до тех пор, пока не будут выпущены патчи.


Эта ошибка вызвана новой версией Node (12) и старой версией gulp (менее 4).

Понижение версии Node и других зависимостей не рекомендуется. Я решил эту проблему, обновив package.jsonфайл, загружающий последнюю версию всех зависимостей. Для этого я использую npm-check-updates. Это модуль, который обновляет package.jsonпоследнюю версию всех зависимостей.

Ссылка : https://www.npmjs.com/package/npm-check-updates

npm i -g npm-check-updates
ncu -u
npm install

В большинстве случаев нам придется обновить gulpfile.jsтакже, как показано ниже:

Ссылка : https://fettblog.eu/gulp-4-parallel-and-series/#migration

Перед:

gulp.task(
    'sass', function () {
        return gulp.src([sourcePath + '/sass/**/*.scss', "!" + sourcePath + "/sass/**/_*.scss"])

            ....

    }
);

Other config...

gulp.task(
    'watch', function () {
        gulp.watch(sourcePath + '/sass/**/*.scss', ['sass']);
    }
);

После:

gulp.task('sass', gulp.series(function(done) {
    return gulp.src([sourcePath + '/sass/**/*.scss', "!" + sourcePath + "/sass/**/_*.scss"])

            ...

    done();
}));

Other config...

gulp.task(
    'watch', function () {
        gulp.watch(sourcePath + '/sass/**/*.scss', gulp.series('sass'));
    }
);



Я получал эту ошибку на Windows 10. Оказалось, что поврежденный перемещаемый профиль.

npm ERR! node v12.4.0
npm ERR! npm  v3.3.12

npm ERR! primordials is not defined
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:

Удаление C:Users{user}AppDataRoamingnpmпапки устранило мою проблему.



Просто следуйте этим шагам. Он отлично работал при многократной установке npm, установке любых других модулей или даже публикации проекта в артефакте.

В том же каталоге, где у вас есть package.json, создайте файл npm-shrinkwrap.json со следующим содержимым:

{
  "dependencies": {
    "graceful-fs": {
        "version": "4.2.2"
     }
  }
}

Запустите npm install, и не беспокойтесь, он обновит npm-shrinkwrap.json кучей контента. Давайте избавимся от этих обновлений, обновив опции скриптов package.json .

"scripts": {
    "preshrinkwrap": "git checkout -- npm-shrinkwrap.json",
    "postshrinkwrap": "git checkout -- npm-shrinkwrap.json"
}

Теперь вы можете запустить npm install и ваш npm-shrinkwrap.json останется без изменений и будет работать вечно.


Это может произойти поздно, но для тех, кто по-прежнему заинтересован в сохранении Node v12 при использовании последней версии gulp ^ 4.0, выполните следующие действия:

Обновите интерфейс командной строки (только для предосторожности), используя:

npm i gulp-cli -g

Добавьте / обновите gulpнижний раздел зависимостей вашего package.json

"dependencies": {
  "gulp": "^4.0.0"
}

Удалить свой package-lock.jsonфайл

Удалить вашу node_modulesпапку

Наконец, запустите npm iдля обновления и воссоздания новой папки node_modules и файла package-lock.json с правильными параметрами для Gulp ^ 4.0

npm i

Примечание Gulp.js 4.0 вводит series()и parallel()методы , чтобы объединить задачи вместо методов массивов , используемых в Глоток 3, и поэтому вы можете или не может возникнуть ошибка в вашем старом gulpfile.jsскрипте.

Чтобы узнать больше о применении этих новых функций, этот сайт действительно сделал это правильно: https://www.sitepoint.com/how-to-migrate-to-gulp-4/

( Если это поможет, пожалуйста, оставьте стук вверх )




Я исправил эту проблему в Windows 10, удалив узел из раздела «Установка и удаление программ» -> Node.js.

Затем я установил версию 11.15.0 с https://nodejs.org/download/release/v11.15.0/

Выберите node-v11.15.0-x64.msi, если у вас работает Windows 64bit.



Я столкнулся с той же проблемой. Что я пытался и работал для меня:

  1. Проверьте версию NODE и GULP (комбинация узла v12 и gulp меньше чем v4 не работает)

  2. Я понижаю версию NPM:

    • sudo NPM установить -gn
    • sudo n 10.16.0

Он работал нормально, а затем просто следуйте инструкциям вашей консоли.



Для тех, кто использует yarn.

yarn global add n
n 11.15.0
yarn install # have to install again



Для тех, кто имеет ту же ошибку по той же причине в ADOS CI Build:

Этот вопрос был первым, что я нашел, когда искал помощи. У меня есть конвейер сборки ADOS CI, где для установки Node используется первая задача установки инструмента Node.js. Затем задача npm используется для установки gulp (npm install -g gulp). Затем следующая задача Gulp запускает default-task из gulpfile.js. В этом есть что-то вроде глотка.

Когда я изменил инструмент Node.js, чтобы установить последний узел 12.x вместо старого, последняя версия gulp была 4.0.2. Результатом стала та же ошибка, что и в вопросе.

В этом случае мне помогло понизить node.js до последней версии 11.x, как уже предлагали Альфонс Р. Дсуза и Аймен Ясин. В этом случае, хотя нет необходимости использовать какие-либо предложенные ими команды, достаточно просто установить спецификацию версии установщика инструмента Node.js на последнюю версию Node от 11.x.

введите описание изображения здесь

Точная версия Node.js, которая была установлена ​​и работает, была 11.15.0. Я не должен был понизить глоток.


Я ударил эту ошибку после обновления моего узла до версии 12, которая не работает с Gulp 3.9.1. Что касается того, что мой gulpfile.js не был таким сложным, я решил обновить его до Gulp 4, используя эту статью. Он прошел хорошо, и это было намного проще, чем я думал.


У вас есть два варианта здесь

  1. Либо обновить до глотка 4 Или еще
  2. перейти на более раннюю версию узла.

Это потому, что проблема совместимости между nodeи gulpв вашей системе. Понижение nodeили обновление gulpисправит эту проблему.

sudo npm i -g n
sudo n 11.15.0

Попробуйте удалить node_modulesпапку и package-lock.jsonфайл и установить заново, используя npm iкоманду, если она все еще не работает.


Что мне помогло, так это использование python2 во время установки npm.

> npm install --python=~/venv/bin/python


Как мы также получаем эту ошибку, когда мы используем пакет s3 NPM. Итак, проблема в пакете graceful-fs, мы должны обновить его. Работает нормально на 4.2.3.

Так что просто посмотрите, какой пакет NPM он показывает в журналах трассировки, и обновите graceful-fs соответственно до 4.2.3.


Я также получал сообщение об ошибке на узле 12/13 с Gulp 3, переезд в узел 11 работал.


Решено путем понижения версии Node.js с 12.14.0до 10.18.0и переустановки node_modules.


Если вы пытаетесь установить semantic-uiи возникает следующая ошибка, попробуйте загрузить последнюю версию узла js(13.5.0)с последними функциями, с Node.js.org. Более того, вместо попытки установки семантики NPM, вы просто должны добавить ссылку (которую вы можете найти от cdnjs ссылка на заголовок вашего index.htmlфайла. Удачи!



Шаги, чтобы решить проблему: —

Я исправил проблему с помощью следующих шагов: —

  1. Установка NVM
  2. Установил lts / dubnium с помощью команды » nvm install lts / dubnium «
  3. Используйте команду lts / dubnium с помощью команды « nvm install lts / dubnium «

Теперь вы можете проглотить развернуть



Я предлагаю вам сначала убедиться, что установка NPM не является вашей проблемой. Затем вы понижаете версию узла и глотка. Я использовал узел 10.16.1 и gulp 3.9.1.

Чтобы понизить свой глоток, вы можете попробовать

npm install gulp@^3.9.1

Понравилась статья? Поделить с друзьями:
  • Referenced before assignment error
  • Reference error js примеры
  • Reference by pointer windows 10 синий экран как исправить windows 10
  • Reed solomon error correction
  • Reduce initial server response time как исправить