2017-02-16 20 views
6

Staram w ES6, aby importować pliki JSX bez konieczności rozszerzenia .jsx:Eslint errorring importowania JSX bez rozszerzenia

import LoginErrorDialog from './LoginErrorDialogView'; 

wolno:

import LoginErrorDialog from './LoginErrorDialogView.jsx'; 

Chociaż mam WebPACK importowania w ten sposób z powodzeniem:

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) nadal errorring.

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

Jakieś pomysły?

+1

Uważam, że nie jest to błąd WebPack, to eslint wymowny ty, że nie można znaleźć ścieżki do 'LoginView'. Zobacz https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/no-unresolved.md – redconservatory

+0

@redconservatory Zgadzam się, problem, który znajduję, polega na tym, że nie mogę pozwolić, aby eslint rozpoznawał jsx plików, w wyniku czego muszę zignorować linię. Mam zestaw JSX do true w moim pliku eslint, ale nadal rozpoznaje pliki. – gazzwi86

+0

Więc jeśli masz zainstalowany globalnie program eslint, musisz również zainstalować 'eslint-plugin-react' globalnie dla' jsx: true' do pracy (WTF !?). Jeśli jest to projekt osobisty, zaleciłbym zainstalowanie JS Standard zamiast tego. Jeśli jest to projekt roboczy, nie używałbym globalnych modułów węzłów i instalowałbym '' eslint' oraz 'eslint-plugin-react' lokalnie w twoim projekcie ... jeśli używasz edytora' 'Sublime' lub' Atom', możesz trzeba zanurkować w lokalne ustawienia linta ... – redconservatory

Odpowiedz

4

Miałem ten sam problem tutaj i naprawiłem dodanie dodatkowej konfiguracji w moim .eslint.

Rozszerza Property dodać:

"plugin:import/react" 

ustawienie właściwości dodać:

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

Twój .eslint będzie podobny:

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