下载了Mint-Ui的example,使用npm run dev时发现如下报错:
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的第二个参数没有指定。
这是因使用ESLint检查javascript代码语法时,压缩工具对语法的严谨性要求比较高。
虽然parseInt的第二个参数默认是十进制,(第二参数有四种:2、8、10、16,分别对应二进制、八进制、十进制、十六进制);
但在parseInt语法进行转换时,还是要求明确加个第二个参数.
代码改为以下即可
return parseInt(this.$el.getBoundingClientRect().bottom,10) <= parseInt(this.scrollEventTarget.getBoundingClientRect().bottom,10) + 1;