下載了Mint-Ui的example,使用npm run dev時發現以下報錯:javascript
ERROR in ./packages/loadmore/src/loadmore.vue ✘ http://eslint.org/docs/rules/radix Missing radix parameter D:\WebStormProject\mint-ui-master\packages\loadmore\src\loadmore.vue:271:18 return parseInt(this.$el.getBoundingClientRect().bottom) <= parseInt(this.scrollEventTarget.getBoundingClientRect().bottom) + 1; ✘ http://eslint.org/docs/rules/radix Missing radix parameter D:\WebStormProject\mint-ui-master\packages\loadmore\src\loadmore.vue:271:71 return parseInt(this.$el.getBoundingClientRect().bottom) <= parseInt(this.scrollEventTarget.getBoundingClientRect().bottom) + 1; ✘ 2 problems (2 errors, 0 warnings) Errors: 2 http://eslint.org/docs/rules/radix
按錯誤提示找到./packages/loadmore/src/loadmore.vue 文件
發現文件中如下代碼有提示報錯
checkBottomReached() { if (this.scrollEventTarget === window) { /** * fix:scrollTop===0 */ return document.documentElement.scrollTop || document.body.scrollTop + document.documentElement.clientHeight >= document.body.scrollHeight; } else { return parseInt(this.$el.getBoundingClientRect().bottom) <= parseInt(this.scrollEventTarget.getBoundingClientRect().bottom) + 1; ///提示有錯 } },
一番搜索後,發現Missing radix parameter的意思是:缺乏一個基數根,也就是指:parseint的第二個參數沒有指定。vue
這是因使用ESLint檢查javascript代碼語法時,壓縮工具對語法的嚴謹性要求比較高。java
雖然parseInt的第二個參數默認是十進制,(第二參數有四種:二、八、十、16,分別對應二進制、八進制、十進制、十六進制);
但在parseInt語法進行轉換時,仍是要求明確加個第二個參數.npm
代碼改成如下便可工具
return parseInt(this.$el.getBoundingClientRect().bottom,10) <= parseInt(this.scrollEventTarget.getBoundingClientRect().bottom,10) + 1;