2017-02-16 20 views
6

मैं कोशिश कर रहा हूँ बिना jsx आयात करने errorring,, .jsx विस्तार की आवश्यकता के बिना jsx फ़ाइलें आयात करने:Eslint ES6 में विस्तार

import LoginErrorDialog from './LoginErrorDialogView'; 
नहीं

:

import LoginErrorDialog from './LoginErrorDialogView.jsx'; 

मैं webpack मिल गया है जबकि आयात करने के लिए इस फैशन सफलतापूर्वक में:

export default { 
    entry: './src/ui/js/app.js', 
    output: { 
    publicPath: '/', 
    filename: 'bundle.js' 
    }, 
    resolve: { 
    extensions: ['.js', '.jsx'], 

Eslint (esw webpack.config.* ./ --color --ext .js --ext .jsx) अभी भी errorring है।

Unable to resolve path to module './LoginView' import/no-unresolved

कोई भी विचार?

+1

मुझे विश्वास है कि एक webpack त्रुटि नहीं है, कि eslint कह है आप कि 'LoginView' का मार्ग नहीं मिला। Https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/no-unresolved.md – redconservatory

+0

@redconservatory मैं सहमत हूं, मुझे जो समस्या मिल रही है वह यह है कि मुझे एस्लिंट jsx को पहचान नहीं सकता फाइलें, और नतीजतन लाइन को अनदेखा कर रहा हूं। मेरे पास मेरी एस्लिंट फ़ाइल में जेएसएक्स सेट सही है, लेकिन यह अभी भी फाइलों को पहचानता है। – gazzwi86

+0

तो यदि आपके पास विश्व स्तर पर एस्लिंट स्थापित है, तो आपको 'jsx: true' के लिए काम करने के लिए वैश्विक रूप से' eslint-plugin-react' 'स्थापित करना होगा (WTF !?)। यदि यह एक निजी परियोजना है तो मैं इसके बजाय जेएस मानक स्थापित करने की सिफारिश करता हूं। यदि यह एक कार्य प्रोजेक्ट है, तो मैं ग्लोबल नोड मॉड्यूल का उपयोग नहीं करता और केवल अपनी परियोजना में स्थानीय रूप से 'एस्लिंट' और' एस्लिंट-प्लगइन-रिएक्शन 'इंस्टॉल करता हूं ... यदि आप' सब्लिमे 'या' एटम 'जैसे संपादक का उपयोग कर रहे हैं तो आप शायद स्थानीय लिंट सेटिंग्स में गोता लगाने की जरूरत है ... – redconservatory

उत्तर

4

मेरे पास एक ही समस्या थी, और मैंने अपने .eslint में अतिरिक्त कॉन्फ़िगरेशन जोड़ने को तय किया।

का विस्तार संपत्ति जोड़ें:

"import/resolver": { 
    "node": { 
    "extensions": [".js",".jsx"] 
    } 
} 

आपका .eslint समान होगा:

"plugin:import/react" 

संपत्ति जोड़ने की स्थापना

{ 
    "extends": [ 
     ... 
     "plugin:import/react", 
     ... 
    ], 
    ... 
    "settings": { 
     "import/resolver": { 
      "node": { 
      "extensions": [".js",".jsx"] 
      } 
     } 
    }, 
... 
}