Part 3 - Integrated sass/css loader

6 篇文章 0 订阅
5 篇文章 0 订阅

Step 1

1、npm install style-loader css-loader sass-loader sass --save-dev

2、编辑webpack.config.js

const path = require('path')
const publicPath='../build/'
const rootpath=path.resolve(__dirname,publicPath)

const HtmlWebpackPlugin= require('html-webpack-plugin')

module.exports={
    entry:{
        reactapp:'./index.js'
    },
    // output:{
    //     filename:'[name].js',
    //     path:rootpath,
    //     publicPath:publicPath
    // },
    devServer:{//webpackServer
        hot:true,//开启热更新
        host:'localhost',//主机名
        port:8056,//端口号
        open:true//编译完打开浏览器
    },
    mode:'development',
    module:{
        rules:[//webpack package rules
            {
                test:/\.(js)$/,//当webpack 打包用到的是JS文件时,就用babel-loader来编译
                exclude:/node_modules/,//排除node_modules文件里的js
                use:{
                    loader:'babel-loader'
                }
            },
            {
                test:/\.(css|scss)$/,//当webpack碰到的是.sass、.css文件,就用style-loader、cssloader来编译
                exclude:/node_modules/,
                use:['style-loader','css-loader',"sass-loader"]
            }
        ]
    },
    resolve:{
        modules:['node_modules'],
        extensions:['.js','.json']
    },
    plugins:[
        new HtmlWebpackPlugin({
            filename:'index.html',
            template:'./public/index.html',
            inject:true
        })
    ]
}

我们在webpack.config.js中添加了sass-loader

Step 2

在src folder中创建这几个文件:

 Main.css

.color-red{
    color: red;
}

Main.scss

.color-red{
    span{
        color: blue!important;
    }
}

App.js

import React from 'react'
import ReactDom from 'react-dom'
import Main from './main'

const CreateApp=(Id)=>{
    ReactDom.render(
        <Main></Main>,
        document.getElementById(Id)
    )
}
export default CreateApp

Main.js

import React from 'react'
import '../css/Main.css'
import '../css/Main.scss'

const Main =()=>{
    return (
        <h1 className='color-red'>
            reactapp(by css)
            <br/>
            <span>span-color(by sass)</span>
        </h1>
    )
}
export default Main

修改index.js代码,如下:
 

import CreateApp from "./src/js/App";
CreateApp('app')

Step 3

最后,npm run dev,预览效果

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值