加载 CSS 及 img
添加CSS样式
方法一:
//例如 Logo.js
import React from 'react';
class Logo extends React.Component {
render(){
return(
<div>
<img src="https://fightingljm.github.io/images/book-cover.jpg" alt="" style=/>
</div>
)
}
}
export default Logo;
或者另一种方式
import React from 'react';
class Logo extends React.Component {
render(){
let style = {width:'100px',border:'2px solid #ccc',borderRadius:'50%'}
return(
<div>
<img src="https://fightingljm.github.io/images/book-cover.jpg" alt="" style={style}/>
</div>
)
}
}
export default Logo;
方法二:
//例如 Signin.js
import React from 'react';
class Signin extends React.Component {
getStyle(){
return{
float : 'left'
}
}
render(){
let color = 0;
let styles = {
leftBtn : {
background:color ? 'red' : 'yellow'
},
rightBtn : {
background:'blue'
}
}
return(
<div style={this.getStyle()}>
<input style={styles.leftBtn} type="button" value="登录"/>
<input style={styles.rightBtn} type="button" value="注册"/>
</div>
)
}
}
export default Signin;
方法三:
外链样式
首先要装包
$ npm install --save-dev style-loader css-loader
没有包会报错:You may need an appropriate loader to handle this file type.
然后修改 webpack.config.js
// webpack.config.js
module.exports = {
entry:'./src/index.js',
output:{
path:'build',
filename:'bundel.js'
},
devtool:'eval',//报错到源代码
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,//排除node_modules文件夹
use: "babel-loader"
},
+ {
+ test: /\.css$/,
+ use: ['style-loader','css-loader']
+ }
]
}
}
接下来就可以演示一个简单的导出 先看 main.css
/*main.css*/
*{
margin: 0;
padding: 0;
}
body{
background-color: #ccc;
}
再看导入到 index.js 时,直接导入文件就可以
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
+ import './main.css' //没有装包会报错:You may need an appropriate loader to handle this file type.
ReactDOM.render(
<App/> ,document.getElementById('app')
)
这样就完成了css文件的外链
本地图片加载
同样,首先装包
$ npm install --save-dev file-loader
修改webpack.config.js
module.exports = {
entry:'./src/index.js',
output:{
path:'build',
filename:'bundel.js',
+ publicPath:'build/'
},
devtool:'eval',//报错到源代码
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,//排除node_modules文件夹
use: "babel-loader"
},//js文件用babel加载
{
test: /\.css$/,
use: ['style-loader','css-loader']
},//css文件的加载,解析文件样式
+ {
+ test: /\.(jpe?g|png)$/,
+ use: 'file-loader'
+ }//图片加载
]
}
}