npm устаревшая ошибка Не удается прочитать свойство 'длина' из неопределенного - PullRequest
13 голосов
/ 31 марта 2019

Я пытаюсь запустить 'npm устаревшие' из консоли в моем проекте узла. Но я получаю эту ошибку:

npm ERR! Cannot read property 'length' of undefined

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\User\AppData\Roaming\npm-cache\_logs\2019-03-31T12_26_30_745Z-debug.log

Это ошибка в журнале:

199 verbose stack TypeError: Cannot read property 'length' of undefined
199 verbose stack     at dotindex (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\text-table\index.js:59:32)
199 verbose stack     at C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\text-table\index.js:11:21
199 verbose stack     at Array.forEach (<anonymous>)
199 verbose stack     at forEach (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\text-table\index.js:73:31)
199 verbose stack     at C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\text-table\index.js:10:9
199 verbose stack     at Array.reduce (<anonymous>)
199 verbose stack     at reduce (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\text-table\index.js:63:30)
199 verbose stack     at module.exports (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\text-table\index.js:9:20)
199 verbose stack     at C:\Users\amita\AppData\Roaming\npm\node_modules\npm\lib\outdated.js:130:16
199 verbose stack     at cb (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\slide\lib\async-map.js:47:24)
199 verbose stack     at outdated_ (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\lib\outdated.js:221:12)
199 verbose stack     at skip (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\lib\outdated.js:343:5)
199 verbose stack     at updateDeps (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\lib\outdated.js:446:7)
199 verbose stack     at tryCatcher (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\bluebird\js\release\util.js:16:23)
199 verbose stack     at Promise.successAdapter [as _fulfillmentHandler0] (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\bluebird\js\release\nodeify.js:23:30)
199 verbose stack     at Promise._settlePromise (C:\Users\amita\AppData\Roaming\npm\node_modules\npm\node_modules\bluebird\js\release\promise.js:566:21)
200 verbose cwd C:\Users\amita\Ionic\toratlechima
201 verbose Windows_NT 10.0.17134
202 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\amita\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "outdated"
203 verbose node v10.11.0
204 verbose npm  v6.9.0
205 error Cannot read property 'length' of undefined
206 verbose exit [ 1, true ]

Это также происходит, когда я пытаюсь запустить его глобально. Кто-нибудь сталкивался с этим?

Ответы [ 3 ]

15 голосов
/ 01 апреля 2019

Похоже, будет исправлено в следующем выпуске, который еще не вышел.

https://github.com/npm/cli/pull/173

Вы можете установить предварительный релиз, чтобы исправить это.

npm -g i npm@next

Обновление

Выход NPM 6.9.2

npm install -g npm

12 голосов
/ 04 апреля 2019

В npm есть ошибка, но вы легко можете ее исправить:

  1. Перейдите в папку npm (т.е. /usr/local/lib/node_modules) и найдите файл outdated.js (например, /usr/local/lib/node_modules/npm/lib/outdated.js для Mac или C:\Users\YOUR_USER_NAME\AppData\Roaming\npm\node_modules\npm\lib\outdated.js для Windows )
  2. Найдите функцию makePretty и измените

    deppath
    

    до

    deppath || 'global'
    

в моем случае это была строка # 152

Надеюсь, это поможет! ?

1 голос
/ 23 апреля 2019

Вы также можете попробовать npm upgrade -g. Работал на меня.

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