2015-06-19 10 views
5

Używam Webpacka zarówno do aplikacji, jak i testów (do tego celu służy https://github.com/webpack/karma-webpack). Aplikacja znajduje się w maszynopisie i testach w Babel.Pakiety internetowe Karma nie może rozpoznać lokalnego importu

Importowanie czegoś z autonomicznego modułu w pracy testowej (przy użyciu import { cleanHTML, fromHTML, toHTML } from "../../app/utils/text.ts";, tj. Muszę wspomnieć rozszerzenie .ts, w przeciwnym razie nie powiedzie się).

Kiedy rzeczywiście próbuję zaimportować komponent React, który importuje komponent do innego pliku, pojawia się następujący błąd: Module not found: Error: Cannot resolve 'file' or 'directory' ./blocks/paragraph.

Drzewo katalogu wygląda następująco:

src/ 
    app/ 
    components/ 
     blocks/ 
     paragraph.ts 
    main.ts 
    tests/ 
    components/ 
     main_tests.js 
    utils/ 

a przywozem main.ts paragraph.ts Podobnie jak import { ParagraphBlockComponent } from "./blocks/paragraph";

normalnych prac kompilacji, ale nie testów. Oto config karma:

var path = require('path'); 

module.exports = function (config) { 

config.set({ 
    basePath: 'src', 
    singleRun: true, 
    frameworks: ['mocha', 'chai'], 
    reporters: ['dots'], 
    browsers: ['Firefox'], 
    files: [ 
     'tests/index.js' 
    ], 
    preprocessors: { 
     'tests/index.js': ['webpack'] 
    }, 
    webpack: { 
     noInfo: true, 
     module: { 
      loaders: [ 
       { 
        test: /\.ts$/, 
        loaders: ['awesome-typescript-loader'] 
       }, 
       { 
        test: /\_tests.js$/, 
        loaders: ['babel-loader'] 
       } 
      ] 
     } 
    }, 
    webpackMiddleware: { 
     noInfo: true, 
     stats: { 
      color: true, 
      chunkModules: false, 
      modules: false 
     } 
    } 
}); 

}; 

Coś mnie ominęło?

Odpowiedz

7

Dodawanie do następujących config karma WebPACK stałe to dla mnie

resolve: { 
    extensions: ['', '.js', '.ts'] 
},