将JSON.parse()位置转换成行号和列
Convert JSON.parse() position into line number and column
如果我的 package.json
有错误,我会在 运行 yarn
时看到以下内容:
error An unexpected error occurred: ": Unexpected token } in JSON at position 333".
如何计算出这是第几行/列号?
jsonlint
您可以将文本 copy/paste 转换为 jsonlint,或者在本地安装相同的内容:
npm -g install jsonlint
然后查看文件中的位置:
$ jsonlint package.json
Error: Parse error on line 18:
...er": "^2.3.0" }}}
--------------------^
Expecting 'EOF', got '}'
使用 npm
并且您的文件名为 package.json
与 yarn
不同,npm
会打印出 package.json
错误的上下文。
它不像 jsonlint
的输出那么简洁,但它不需要额外的包。
使用 npm install
和 --dry-run
实际上什么都不做:
$ npm i --dry-run
npm ERR! file /home/ravi/repo/erc20/pet-shop-tut/package.json
npm ERR! code EJSONPARSE
npm ERR! Failed to parse json
npm ERR! Unexpected token '}' at 18:2
npm ERR! }}
npm ERR! ^
npm ERR! File: /home/ravi/repo/erc20/pet-shop-tut/package.json
npm ERR! Failed to parse package.json data.
npm ERR! package.json must be actual JSON, not just JavaScript.
npm ERR!
npm ERR! Tell the package author to fix their package.json file. JSON.parse
npm ERR! A complete log of this run can be found in:
npm ERR! /home/ravi/.cache/npm/_logs/2017-10-20T09_07_12_967Z-debug.log
在 Vim 中,您可以键入 :goto 94
以到达第 94 个字符,就在位置 94 的前面。但是,如果您的文件包含多字节字符,这似乎效果不佳.
如果我的 package.json
有错误,我会在 运行 yarn
时看到以下内容:
error An unexpected error occurred: ": Unexpected token } in JSON at position 333".
如何计算出这是第几行/列号?
jsonlint
您可以将文本 copy/paste 转换为 jsonlint,或者在本地安装相同的内容:
npm -g install jsonlint
然后查看文件中的位置:
$ jsonlint package.json
Error: Parse error on line 18:
...er": "^2.3.0" }}}
--------------------^
Expecting 'EOF', got '}'
使用 npm
并且您的文件名为 package.json
与 yarn
不同,npm
会打印出 package.json
错误的上下文。
它不像 jsonlint
的输出那么简洁,但它不需要额外的包。
使用 npm install
和 --dry-run
实际上什么都不做:
$ npm i --dry-run
npm ERR! file /home/ravi/repo/erc20/pet-shop-tut/package.json
npm ERR! code EJSONPARSE
npm ERR! Failed to parse json
npm ERR! Unexpected token '}' at 18:2
npm ERR! }}
npm ERR! ^
npm ERR! File: /home/ravi/repo/erc20/pet-shop-tut/package.json
npm ERR! Failed to parse package.json data.
npm ERR! package.json must be actual JSON, not just JavaScript.
npm ERR!
npm ERR! Tell the package author to fix their package.json file. JSON.parse
npm ERR! A complete log of this run can be found in:
npm ERR! /home/ravi/.cache/npm/_logs/2017-10-20T09_07_12_967Z-debug.log
在 Vim 中,您可以键入 :goto 94
以到达第 94 个字符,就在位置 94 的前面。但是,如果您的文件包含多字节字符,这似乎效果不佳.