目录
  • 反向代理
    • 安装使用
      • 编写setupProxy.js
      • 测试案例
  • CSS模块化
    • 案例

    反向代理

    官网:[Proxying API Requests in Development | Create React App 中文文档 (bootcss.com)

    安装使用

    npm i http-proxy-middleware //安装

    编写setupProxy.js

    /**
     * 设置代理
     */
     const { createProxyMiddleware } = require('http-proxy-middleware');
     module.exports = function(app) {
       app.use(
         '/ajax',//以ajax开头
         createProxyMiddleware({
           target: 'https://i.maoyan.com',
           changeOrigin: true,
         })
       );
     };
    

    测试案例

    /**
     * 反向代理
     */
    import React, { Component } from 'react';
    import axios from 'axios';
    export default class DaiLi extends Component{
      componentDidMount(){
          axios.get("/ajax/mostExpected?limit=10&offset=0&token=&optimus_uuid=46E0ACB0E7E111ECB8920FC22EFCA8A202A7733C10C4484FB57F69AF4A705A69&optimus_risk_level=71&optimus_code=10").then(res=>{
              console.log(res)
          })
      }
        render() {
        return (
          <div>
            反向代理
          </div>
        );
      };
    };
    

    这样就实现反向代理了,没有跨域问题~

    CSS模块化

    在不同组件中引入css但他们的css都是公用的,

    所以为了解决这个问题,改成模块化

    • 1.将文件名改为文件名.module.css
    • 2.将module.css引入
    • 3.通过引入名.样式名实现样式的模块化

    这样他就能保证样式名不重复

    案例

    css文件Films.module.css

    .active{
        color: blueviolet;
    }
    
    import React from 'react';
    import style from './css/Films.module.css'
    function Films(){
        console.log(style);
        return (
            <div>
                Films
                <b className={style.active}>去404页(编程式导航)</b>
            </div>
        );
    }
    export default Films
    

    这样就能实现样式自由!!!

    声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。