Перед установкой Maverick мое приложение хорошо работает. После установки Maverick, когда я набрал nodemon app.js
в терминале, он больше не работал, поэтому я переустановил узел, а затем npm uninstall nodemon
, а затем npm install nodemon
, чтобы переустановить его. Это сработало хорошо, и теперь nodemon работает. К сожалению, теперь у меня есть новая ошибка, которую я не могу решить. При загрузке изображений в моем приложении я получаюМой модуль узла больше не работает после обновления до Maverick
TypeError: Cannot read property 'width' of undefined
var gm = require('gm').subClass({ imageMagick: true });
gm(target_path).size(function (err, size) {//shrinks and replaces large images
if (size.width > 700 || size.height > 700) {
gm(target_path).scale(700, 700).autoOrient().write(target_path, function (err) {
if (!err) console.log('shrunk! ');
});
}
});
Если я комментирую его, а затем просто загрузить страницу с изображением, то я получаю
Error: spawn ENOENT
at errnoException (child_process.js:1001:11)
at Process.ChildProcess._handle.onexit (child_process.js:792:34)
2 Oct 17:30:21 - [nodemon] app crashed - waiting for file changes before starting...
Я удалил и смоделированные fs, gm, imagemagick, jquery и почти все мои модули без успеха. У меня есть следующее в пределах usr/local/lib/node_modules
и внутри моего каталога node_modules
внутри моего проекта минус узел и npm.
$ ls
bcrypt-nodejs consolidate express fs gm imagemagick jquery mongodb node-fs nodemon npm
Все еще получаю это:
/Users/Squirrel/Documents/Code/Memry/Memry_11-8/routes/content.js:605
if (size.width > 700 || size.height > 700) {
^
TypeError: Cannot read property 'width' of undefined
at gm.<anonymous> (/Users/Squirrel/Documents/Code/Memry/Memry_11-8/routes/content.js:605:15)
at gm.emit (events.js:106:17)
at gm.<anonymous> (/Users/Squirrel/Documents/Code/Memry/Memry_11-8/node_modules/gm/lib/getters.js:70:16)
at cb (/Users/Squirrel/Documents/Code/Memry/Memry_11-8/node_modules/gm/lib/command.js:265:16)
at ChildProcess._spawn.proc.on.onExit (/Users/Squirrel/Documents/Code/Memry/Memry_11-8/node_modules/gm/lib/command.js:247:9)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:756:16)
at Socket.<anonymous> (child_process.js:969:11)
at Socket.emit (events.js:95:17)
at Pipe.close (net.js:465:12)
3 Oct 11:58:43 - [nodemon] app crashed - waiting for file changes before starting..
У вас есть графическая магия, установленная на вашей системе? Модуль 'gm' - это всего лишь обертка вокруг двоичного кода командной строки, поэтому кажется, что двоичный файл командной строки больше не установлен. – mscdex
@mscdex Я не уверен. Как проверить и/или установить его? – Squirrl
Бинарный файл командной строки просто называется 'gm', поэтому попробуйте ввести его в окне терминала и посмотреть, что вы вернете. – mscdex