Using Webpack 2 und sass-loader 4,11Webpack2 nicht @import Aussage in meinem SASS Dateien zu verstehen (Wie SASS mit webpack2 kompilieren?)
webpack --config webpack.config.js
Hier ist meine webpack.config.js
var path = require('path');
var sass = require("./sass/lifeleveler.scss");
module.exports = {
entry: './dist/main.js',
output: {
filename: 'lifeleveler.app.js',
path: path.resolve(__dirname, 'dist')
},
watch: true,
watchOptions: {
aggregateTimeout: 300,
poll: 1000,
ignored: /node_modules/
},
module: {
loaders: [
{
test: /\.scss$/,
include: [
path.resolve(__dirname, 'node_modules'),
path.resolve(__dirname, './sass')
],
loaders: ["style-loader", "css-loader", "sass-loader"]
}
],
rules: [
{
test: /\.tsx?$/,
loader: 'ts-loader',
exclude: /node_modules/,
},
{
enforce: 'pre',
test: /\.tsx?$/,
use: "source-map-loader"
}
]
},
sassLoader: {
includePaths: [path.resolve(__dirname, "./sass")]
},
resolve: {
modulesDirectories: ['./sass'],
extensions: [".tsx", ".ts", ".js", "scss"]
},
devtool: 'inline-source-map'
};
Hinweis, wenn ich versuchte, diese an der Spitze meiner config:
var css = require("!raw-loader!sass-loader!./sass/lifeleveler.scss");
var css = require("!css-loader!sass-loader!./sass/lifeleveler.scss");
diesen Fehler Got:
Error: Cannot find module '!raw-loader!sass-loader!./sass/lifeleveler.scss'
, weshalb ich nur mit diesem ging: var sass = require("./sass/lifeleveler.scss");
Und mein liveleveler.scss-Datei (from my SASS project starter kit):
@import "vendors/normalize"; // Normalize stylesheet
@import "vendors/reset"; // Reset stylesheet
@import "modules/base"; // Load base files
@import "modules/defaults"; // Defaults elements
@import "modules/inputs"; // Inputs & Selects
@import "modules/buttons"; // Buttons
@import "modules/layout"; // Load Layouts
@import "modules/svg"; // Load SVG
@import "modules/queries"; // Media Queries
Endlich meine Ordnerstruktur, siehst du irgendwelche eklatanten Probleme?
I found this solution here, jedoch habe ich meine ./sass
Weg zum modulesDirectories
Array und immer noch den Fehler.
Nach mehr Graben fand ich auch this Github issue and solution here, aber seine Verlegenheit nicht für mich arbeiten entweder :(
Ah danke für diese Erklärung! : D Hat es funktioniert ... Ich wusste nicht, dass webpack so funktioniert. Ich sehe jetzt, dass meine Stile tatsächlich in der JS sind! Kombiniert mit templateCache später, denke ich, alles wird in 1 Datei sein. Cool :) 20 Stunden vorher kann ich das überprüfen! –
@LeonGaban du bist willkommen! froh, dass ich Helfen kann! – mrlew