У меня была та же проблема, и, следуя текущему ответу с наибольшим количеством голосов, добавив C:\Program Files\Nodejs
в мои пути к внешним веб-инструментам , ничего не сделал . Даже изменение порядка путей не помогло.
>npm - v
4.2.0
>node - v
v6.10.0
Технически вы можете развернуть свое дерево зависимостей в Visual Studio, чтобы в конечном итоге найти проблему, однако проще просто запустить npm list
и найти проблемного потомка.
Таким образом, поскольку fsevents
был виновником, и это была необязательная зависимость (она не используется при запуске узла с Visual Studio в архитектуре Windows), Я нашел модули, которые имели fsevents, как необязательную зависимость.
Для меня это был модуль ckokidar
, однако он был расположен в двух местах.
MYPROJECT \ node_modules \ chokidar
, а также в
MYPROJECT \ node_modules \ browser-sync \ node_modules \ chokidar
Я подозреваю, что если у вас есть gulp-watch в качестве зависимости, она также может быть там.
Итак, что я сделал для каждой из этих папок, я открыл файл project.json
и удалил все треки fsevents в них.
"dependencies": {
....
"async-each": "^1.0.0", <-- also remember to remove the trailing ',' comma for the end
"fsevents": "^1.0.0" <-- remove this
}
и
"keywords": [
...
"file", <-- remove comma
"fsevents" <-- remove
],
и удалите это полностью
"optionalDependencies": {
"fsevents": "^1.0.0"
},
Не оставляйте запятые в любом из файлов, иначе вы получите ошибку с нпм.
Наконец, щелкните правой кнопкой мыши в Visual Studio на Зависимости и запустите Restore Packages
. Теперь вы должны быть предупреждены бесплатно! Наслаждайтесь.
Возможно, вы немного сбиты с толку.
JSON и AJAX нельзя использовать по выбору.
JSON и XML - это выбор.
JSON и AJAX различны и в значительной степени не связаны, хотя AJAX часто использует JSON, он может легко использовать XML, HTML или простой текст.
Или вы имеете в виду X в AJAX (XML)? Если это так, аргументы для JSON в основном следующие:
В остальном это в основном личные предпочтения.
JSON - это просто формат обмена данными. Он описывает, как данные представлены во время передачи. Вы не можете заменить Ajax на JSON.
Ajax означает асинхронный JavaScript и XML, но при использовании JSON можно сказать, что вы используете AJAJ (асинхронный JavaScript и JSON).
Возможно, вы думаете о методах jQuery $. GetJSON ()
и $. Get ()
?
Разница в том, что $. GetJSON ()
автоматически предполагает, что это данные JSON, а $. Get ()
будет просто получать данные в виде обычного текста.
При использовании $. GetJSON ()
вы также можете получать данные между доменами.