Интеграция Sass в Angular2 — веб-пакет

Я создал новый проект angular2, используя angular CLI(@1.0-webpack.2).

Я хочу интегрировать Sass в свой проект.

Я это знаю:


Я бы предпочел иметь конкретный каталог для .scss файлов, за которыми следует "наблюдать" и компилировать после их изменения, например, .ts файлов после ng serve(терминала).

Спасибо

Представление дерева проекта Angular 2 (CLI)


person Marian07    schedule 25.08.2016    source источник


Ответы (2)


На данный момент (25 августа) это невозможно, но станет возможным со следующим выпуском angular-cli.

В файле angular-cli.json будут имена свойств styles, которые будут массивом путей к файлам стилей, которые при ссылке будут включены в ваше приложение.

Вы можете увидеть мою демонстрацию этой функции на этом веб-семинаре (начиная примерно через 12 минут).

person Brocco    schedule 25.08.2016
comment
Поскольку новый @angular/cli был выпущен, есть ли официальное руководство? - person Marian07; 21.04.2017
comment
Вероятно, так: stackoverflow.com /вопросы/36220256/ - person Marian07; 21.04.2017

Вы должны переместить index.html в dist. Если вы хотите включить сборку scss в сборку веб-пакета, добавьте следующее в конфигурацию веб-пакета:

{
    output: {
        filename: './dist/[name].js'
    },

    module: {
        loaders: [
            {
                test: /\.css$/,
                exclude: './app',
                loader: ExtractTextPlugin.extract('style', 'css')
            },
            {
                test: /\.scss$/,
                loaders: ['exports-loader?module.exports.toString()', 'css', 'sass']
            }
        ]
    },

    plugins: [
        new ExtractTextPlugin('./styles.css')
    ]
};

Затем вы можете включить scss файлов в компоненты ng2 с помощью styles: [require('path-to-scss')]

person quadthagoras    schedule 25.08.2016