2015-11-24 15 views
5

Przeczytałem, że aby mieć mapy źródłowe, muszę używać bezwzględnych adresów URL w oświadczeniu url(''). zrobiłem to w ten sposób:Webpack sass loader z sourcemaps i instrukcjami url

body 
    background-image: url('/elements/assets/tmp_background.jpg') 

To działa, gdy mogę usunąć opcję sourceMap z ładowaczem CSS, to nie robi, gdybym go uaktywnić.

Myślę, że mogłem zawalczyć gdzieś w punkcie absolutnej ścieżki, czy masz jakieś pomysły?

Oto mój plik konfiguracyjny:

module.exports = { 
    devtool: 'source-map', 
    entry: [ 
    'webpack/hot/dev-server', 
    'webpack-dev-server/client?http://localhost:8080', 
    path.resolve(__dirname, 'elements/main.js'), 
    ], 
    output: { 
    path: 'dist', 
    publicPath: '/', // Prefix for all the statics urls 
    filename: 'bundle.js', 
    }, 
    resolve: { 
    root: path.resolve(__dirname), 
    }, 
    module: { 
    loaders: [ 
     { 
     test: /\.js$/, 
     exclude: /node_modules/, 
     loader: 'babel-loader?presets[]=es2015', 
     }, 
     { test: /\.css$/, loaders: ['style', 'css'] }, 
     { test: /\.scss$/, loaders: ['style', 'css?sourceMap', 'sass?sourceMap'] }, 
     { test: /\.sass$/, loaders: ['style', 'css?sourceMap', 'sass?sourceMap&indentedSyntax=true'] }, 
     { test: /\.jade$/, loaders: ['ngtemplate', 'html', 'jade-html'] }, 
     { test: /\.(png|gif|jp(e)?g)$/, loader: 'url-loader?limit=8192' }, 
     { test: /\.(ttf|eot|svg|woff(2))(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: 'url-loader?limit=50000' }, 
    ], 
    }, 
}; 

Na bardziej ogólnej idei, nie mogłem znaleźć pracy przykład tego, co próbuję zrobić. Byłbym bardzo zainteresowany, gdybyś mógł mnie do tego przekierować.

Odpowiedz

1

Można to naprawić, używając publicPath, aż pojawi się czystsze rozwiązanie.

Zobacz https://github.com/webpack/css-loader/issues/29

+0

Nie udało mi się uzyskać tego działa. Czy możesz podać mi przykład? Mam w moim webpack.config.js: 'module.export = {... output: {publicPath: 'http: // localhost: 3000 /', ...}' ale nadal nie dostaję obrazów do załadowania, chyba że Usuwam? SourceMap z ciągu programu ładującego. – Anj

+0

To rozwiązanie działa tylko w trybie deweloperskim, ponieważ 'http: // localhost: 3000 /' nie jest adresem URL prod. Zakończyłem wyłączanie map źródłowych CSS w produkcji ... –

+0

Używam w trybie deweloperskim i nie działa dla mnie w ogóle. Nie potrzebowałbym też map źródłowych w produkcji, więc nie mam włączonych, więc wszystko działa dobrze. Tak naprawdę skończyłem właśnie przy użyciu wtyczki text-extract i teraz to działa. – Anj

Powiązane problemy