学习笔记(2)

关于git使用和IDE使用

良好的开发习惯

  1. 多人协作开发页面注意点:
  • 有小改动记住git add . git commit -m “desc**”
  • push前一定要git pull拉代码报冲突后解决冲突再 git push
  • 以前一直有个疑问就是什么时候用git init 什么时候用git clone 两者又有什么区别:
    在对项目进行“git clone”之前,是否需要“git init”
    所以一般在公司私服上建立了仓库,你想把本地仓库和它连起来上传第一版代码时用到git init
  1. 关于IDE
  • 问题引入:wsl下向私服上push代码经常出现permission denied 并且重新设置用户名密码后仍然不能解决问题,建议使用webstorm操作
  • git指令:git教程

git checkout命令用于切换分支或恢复工作树文件

(尤其是git pull的时候提示你有些文件修改了建议先git add. git commit -m ""的时候你不想提交这些改变可以git checkout xx分支 xx文件)(但一般没必要这么做)

git merge命令用于将两个或两个以上的开发历史加入(合并)一起。

git stash命令用于将更改储藏在脏工作目录中。

  1. 关于webstorm的使用

webstorm使用(一) 解决git冲突

webstorm中使用git管理服务器上的代码——入门级

es6 promise

不管是成功状态的回调函数还是失败状态的回调函数,resolve reject只能传递一个参数(传递多了也只认第一个),所以多参数建议传对象。

dva dispatch回调

实现方式有多种:

看到Dva2.0发布日志中提出dva2.0+版本支持回调,具体实现方式就是effects里面记得return数据即可。

路由

— 好了,现在整理一下整个问题:

  1. 首先:关于react-router react-router-dom不再赘述,在我的react学习笔记系列(一)里有简单介绍。
  2. 被Route包裹的组件会有location,match,history等属性,通过this.props获取即可。–这样因为,有些组件并没有被包裹所以它的props里面就没有history等属性,那么怎么才能有呢?
    • 若它是包裹的组件的子组件,那么我们可以把history从父组件的props里面拿出来再作为props传给子组件。
    • 使用withRouter,withRouter是一个高阶组件返回的就是包裹的组件,此时就有this.props.history了。
    • 网上一些方法:react-router v4 使用 history 控制路由跳转
  3. 关于路由鉴权:

react父子组件传值

  • 业务中经常做的是父组件给子组件传值,但是子组件向父组件传值有时也会遇到:

【react】子组件向父组件传值

总结:父写好state和处理该state的函数,同时将函数名通过props属性值的形式传入子,子调用父的函数,同时引起state变化。

dva项目中传递数据

引入:业务场景:假设我在入口文件已经dispatch一个action把用户信息放在store中,我必须拿到用户信息中的token才能请求下一步的数据A,但是一个组件里我一方面connect取到用户信息,一方面也要取到数据A,明显两者都要从store中拿值,并且是用拿到的token请求A,所以我针对这个问题有两个解决方案:

  • 一个组件内解决:组件根据token请求数据A,在组件里componentDidMount里面使用延迟50msdispatch获取数据A,使用特点:父子组件请求数据可以放在一起,但是请求数据的时机一定要分开。
  • 两个组件内解决:父组件拿到用户信息后根据这个信息有无决定子组件是否渲染,子组件使用models里面的select函数取到state中的用户信息值再用call请求数据A。使用特点:父组件connect取store数据和子组件connect取store数据分离。
  • 当然在业务逻辑比较简单的情况下:最最最建议的方式还是用dispatch回调
    ※ 使用原则总结:
    - 尽量不用setTimeout,所以尽量使用第二种方法,但是当时项目没有用是基于想要使用scroll组件的loadMoreData所以要在同一个组件里面使用,但事实上可以在store中没有数据时处理scroll组件不能上拉加载,然后在store中有数据之后再处理loadMoreData;
    - 至于为什么在componentDidMount里面取不到我们入口文件请求的用户信息数据呢:可以参考React 嵌套组件树生命周期,这里总结一下react组件树的渲染过程:其实是遍历到叶子节点将子组件整个生命周期走完后再回溯,回溯到父组件,所以我们的子组件componentDidMount完成后父组件才componentDidMount取到userInfo,所以需要延迟一段时间(或者说下一次事件循环的时候)才能取到userInfo.

正则

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值