开发问题记录

1、react setState 更新问题

https://www.jianshu.com/p/82ffb3d156a1

  1. setState更新状态时同步的还是异步的?

    1. 了解setState的执行位置

react控制的回调函数中:生命周期函数 / react的事件监听回调

非react控制的异步回调函数中: 定时器回调 / 原生事件监听 / Promise回调 / .....

  1. 异步OR同步

react相关回调中: 异步执行

其它异步回调中: 同步执行

2、transform 会导致内部的元素使用position: fixed功能失效

3、event.preventDefault(); 不生效 解决方案 改为事件监听 

document.getElementById('wheelcContainer').addEventListener('wheel', (event) => {
            event.preventDefault();

4、在父子间import 子组件 子组件class之外的操作会被加载(执行)

5、JSON.parse 反序列化字符串 JSON.stringfly 序列化字符串 evel 也可以反序列化字符串

eval("(" + JSON.stringfly({a: 123}) + ")") // {a :123} 同样可以

new Function同样可以实现evel的功能

function parse(jsonStr) {
  return new Function("return" + jsonStr)();
}
var jsonStr = '{"age":20,"name":"jack"}';
parse(jsonStr);

6、如果有两个组件 A, B 同时A继承了B class App extends B

1、在外部适应组件A 传入props 此时A组件和B组件都能访问props

2、A组件和B组件有相同的方法fn-c,此时不论在A组件调用该方法,还是在B组件调用该方法,调用的都是A组件里面的fn-c。

3、在A组件 const content = super.render 可以调用B组件的render 用来在A组件做渲染

4、只要A组件和B组件相同的方法和生命周期,都会优先调用A组件的 ,A组件没有才会调用子组件的

7、移动端开发

问题:页面显示弹出层 禁止弹出层下面元素滚动

解决: 1.给body加一个 overflow:hidden

--ios弹出软键盘后失效,原因是软键盘弹出会造成页面整体向上滚动

2. body为fixed

-- 页面会回到顶部 解决: 获取 document.scrollingElement.scrollTop值,然后使用js添加到top样式上就行了 或者使用 document.body.scrollTop || document.documentElement.scrollTop也可以

8、freemarker知识点

http://freemarker.foofun.cn/dgui_quickstart.html
模板语法

<h1>Welcome ${user}</h1>

默认值

<h1>Welcome ${user!'aaa'}</h1> //user不存在展示aaa 不设置默认值会报错

变量声明
<#assign name="张三"/> // name

<#assign secondResponsible=pdfMetaContent.secondResponsible?eval /> / / namesecondResponsible、

内建函数 https://blog.csdn.net/weixin_43367967/article/details/88000987

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值