react学习记录问题记录(一)

1.路由(需要注意不同版本的写法存在差异,这里使用的是版本5)

安装第三方路由插件
npm i react-router-dom
相关内容介绍
BrowserRouter 路由容器组件
Route 渲染路由匹配的视图(类似于vue中的router-view)
link 进行路由跳转的入口(类似于vue中的router-link)

实例如下:

import { Component } from "react";
import {BrowserRouter as Router, Route} from 'react-router-dom'
import Login from '../views/login/index.js'
import Home from '../views/home/index.js'
class MainPage extends Component{
    render() {
        return(
            <Router>
                
                  <Route path="/login" component={Login}/>
                  <Route path="/home" component={Home}/>
 
            </Router>
        )
    }
}
export default MainPage

2.react-create-app中的全局scss变量的配置

在webpack.config.js中配置sass全局变量
安装npm install sass-resources-loader --save-dev


const cssRegex = /\.css$/;
const cssModuleRegex = /\.module\.css$/;
const sassRegex = /\.(scss|sass)$/;
const sassModuleRegex = /\.module\.(scss|sass)$/;


{
              test: sassRegex,
              exclude: sassModuleRegex,
              use: getStyleLoaders(
                {
                  importLoaders: 3,
                  sourceMap: isEnvProduction
                    ? shouldUseSourceMap
                    : isEnvDevelopment,
                  modules: {
                    mode: 'icss',
                  },
                },
                'sass-loader'
              ).concat({
                loader: 'sass-resources-loader',
                options: {
                    resources: [
                        // 这里按照你的文件路径填写
                        path.resolve(__dirname, '../src/assets/index.scss')
                    ]
                }
            }),
              sideEffects: true,
            },
            // Adds support for CSS Modules, but using SASS
            // using the extension .module.scss or .module.sass
            {
              test: sassModuleRegex,
              use: getStyleLoaders(
                {
                  importLoaders: 3,
                  sourceMap: isEnvProduction
                    ? shouldUseSourceMap
                    : isEnvDevelopment,
                  modules: {
                    mode: 'local',
                    getLocalIdent: getCSSModuleLocalIdent,
                  },
                },
                'sass-loader'
              ).concat({
                loader: 'sass-resources-loader',
                options: {
                    resources: [
                        // 这里按照你的文件路径填写
                        path.resolve(__dirname, '../src/assets/index.scss')
                    ]
                }
            })
}

3.报错问题记录如下:

关于绑定事件传参数

错误案例 onClick={this.fn(‘xxx’)}
写成上述这个样子fn方法就直接执行了我们需要的是点击的时候执行并且传递对应的参数
解决方案一: onClick= {()=>{this.fn(‘xxx’)}}
解决方案二:onClick={this.fn.bind(this,‘xxx’)}

react中 如何将带标签的字符串展示
<div dangerouslySetInnerHTML =  {{__html:'<h1>nnnnn</h1>'}}></div>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值