Jsconfig में मैप किए गए एस्लिंट सॉल्व पथ कैसे बनाएं


9

अपनी अगली परियोजना में मैंने jsconfig.jsonआसान निरपेक्ष आयात करने के लिए मार्ग की मैपिंग की है

{
  "compilerOptions": {
    "baseUrl": "./",
    "paths": {
      "@/*": ["./*"]
    },
    "target": "es6",
    "module": "commonjs",
    "experimentalDecorators": true
  }
}

मेरे आयात पथ इस तरह दिखते हैं import { VIEW } from '@/src/shared/constants';

मेरी eslintrc.jsसेटिंग्स के रूप में निर्दिष्ट किया गया है

module.exports = {
    ... ,
    settings: {
        "import/resolver": {
          alias: {
            extensions: [".js"],
            map: ["@", "."]
          }
        }
      }
}

मुझे अभी भी यह कहते हुए त्रुटि हो रही है कि "@ / क्या / कभी / मेरा / पथ / समाधान नहीं हो सकता"

मैं एस्क्लिंट को jsconfig पथ का एहसास कैसे करूँ

जवाबों:


6

मैं एशलाइन में अपने पार्सर के रूप में बैबल-एस्लिंट का उपयोग कर रहा था। खोज करते समय, मुझे एहसास हुआ कि मुझे जोड़ना होगाbabel-plugin-module-resolver कि मॉड्यूल को हल करने के लिए babelrc में । इस फ़ाइल में हम अपने मैप किए गए रास्तों को परिभाषित कर सकते हैं जो हमारे jsconfig में हैं।

इसलिए babelrc फ़ाइल में निम्न प्लगइन को जोड़कर मेरे कोड को सफलतापूर्वक संकलित किया गया।

[
    "module-resolver",
    {
        "alias": {
          "@": "./"
        }
    }
]

0

एस्लिंट-इम्पोर्ट-रिज़ॉल्वर-उर्फ के लिए डॉक्स के अनुसार , mapसंपत्ति में सरणियों की एक सरणी होनी चाहिए, इसलिए निम्न प्रयास करें:

module.exports = {
    ... ,
    settings: {
        "import/resolver": {
          alias: {
            extensions: [".js"],
            map: [ ["@", "."] ]
          }
        }
      }
}

इसके अलावा, डबल-चेक करें जिसे आपने वास्तव में eslint-import-resolver-aliasस्थापित किया है - यह भूलना आसान है!


प्लगइन स्थापित है, मैंने इसे सरणी के साथ भी करने की कोशिश की। अभी भी वही समस्या है, यह पथ को हल नहीं कर सकता है।
mdanishs
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.