寫(xiě)Vue2項(xiàng)目時(shí),使用svg-sprite-loader引入icon,遇到了Require statement not part of import statement.(@typescript-eslint/no-var-requires)報(bào)錯(cuò)。這種情況下,如果沒(méi)有影響到代碼功能實(shí)現(xiàn),可以選擇直接webStorm禁止or命令行關(guān)閉提示,眼不見(jiàn)心不煩,或者也可以根據(jù)提示修改代碼或者配置,我這邊是修改了配置文件來(lái)解決問(wèn)題。
錯(cuò)誤顯示中已經(jīng)提示了問(wèn)題是require部分沒(méi)有通過(guò)import引入,且是@typescript-eslint/no-var-requires檢查規(guī)則造成:
Require statement not part of import statement.(@typescript-eslint/no-var-requires)
vue.config.js中造成問(wèn)題的代碼為:
const path = require('path')
config.plugin('svg-sprite').use(require('svg-sprite-loader/plugin'), [{plainSprite: true}])
解決方式
(1).eslintrc.js中的 rules 屬性新增以下內(nèi)容:
// 讓.eslintrc.js文件略過(guò)@typescript-eslint/no-var-requires檢查
rules: {
'@typescript-eslint/no-var-requires': 0
},
(2)如果個(gè)依賴(lài)包版本支持的話(huà),也可以將require的部分改為import引入方式解決