1.用脚手架创建 React@17版本的项目
默认会使用最新18版本的react,但是我想安装16或者 17版本来学习。
那么可以在安装完脚手架后,手动降级。
编辑package.json文件,修改react和react-scripts和react-dom的版本:
16版本:
bash
"react": "^16.8.2",
"react-dom": "^16.8.2",
"react-scripts": "2.1.5",
#或者
"react": "^16.8.6",
"react-dom": "^16.8.6",
"react-scripts": "3.0.1"
17版本:
bash
"react": "^17.0.1",
"react-dom": "^17.0.1",
"react-scripts": "4.0.0",
然后重新 npm i
修改src/index.js:因为 16、17 版本和 18 版本不一样
jsx
import React from 'react'
//18版本:import ReactDOM from 'react-dom/client'
//16/17:import ReactDOM from 'react-dom'
import App from './App'
// 18
// const root = ReactDOM.createRoot(document.getElementById('root'));
// root.render(
// <React.StrictMode>
// <App />
// </React.StrictMode>
// );
// 16/17
ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById('root')
)
注意:16、17 版本一般用 router@5,而 18 版本默认安装就是 router@6,所以这个在安装的时候要设置!
bash
"react-router-dom": "^5.3.0"
2.下拉框等选择控件要控制一些还原时的状态
例如这里的,省份城市联动下拉选择器:

当还原某一个下拉框状态时,应当对另一个进行相关操作:
比如这里如果选择了选省份,那么默认选择全市,城市列表置空

切换了上方类型选项卡,默认选择全省全市,城市列表置空

一旦层级变多了就更复杂,需要考虑的更多!
3.react的脚手架更新比较慢
很多的时候要用强刷才可以更新样式!!!
4.获取 token 本地开启项目的流程
三个项目去掉松果的需求:
访问网站:https://spad.test.classba.cn/debugEntry/#/
点击测试环境(本地开发环境,对应的调用的后端接口是测试环境的)
点击进行登录
点击同步学习
点击添加同步课:
选择年级:二年级
点击开始学习:
然后请求中有一个 getStudyurl,里面有 url,有两个 token
在 readme 中进行修改:得到最终的本地访问路径!
体验测试的账号密码:
19800005478 pbqbk3 19800006301 dgvoa1 19800001076 ysqzut 19800003879 xfcejp 19800008674 1n3arj
语文的:
要选择初中生,全部课程,然后选流程 10,会生成getStudyurl,否则不会
语文的那个结果页面:
英语 pc 端:http://sso.test.classba.cn/login