reactuseref

react动态加载iframe

情况1:后端返回一个完整的网页,前端直接 `iframe src=$url/iframe` 就可以了。情况2:后端返回内容不可控 (比如以下例子)。

目前公司官网用react写的。东西台多还比较繁重。

console.log(iframeSrc); // 输出 iframe 的地址 这段代码首先使用 document.getElementById 方法获取指定 id 的 iframe 元素,然后使用 iframe.src 属性获取 iframe 的地址,并将其存储在 iframeSrc 变量中。

解决方法:在js代码中加个延迟(具体延迟多长时间可以凭个人经验了),这样就可以保证正常得到iframe中的对象了。

因为你的iframe是动态创建的,会不会是这个iframe还没创建好或者说iframe里面的方法还没有加载你就调用该方法了?当然,这个也只是我的一个想法,提出来不晓得能不能对你有所帮助,更多的我也想不出了。

reactuseref  第1张

Reactumi+小笔记

umi中使用sass只需安装 @umijs/plugin-sass 安装完后无需配置,umi会自己识别。

现在 yarn start 或者 yarn build 就会根据环境配置来处理。还有一些细节的调整,会尽力将这个框架更加完善的。

这个是ts的问题,我在stackoverflow上提的问题如链接: 我的提问 ,本质上是使用组件范型的方式解决问题。这一点在 Hello React and TypeScript 中也提到了。

首先得选择一个脚手架搭建一个React工程,React有很多脚手架,为什么选择UmiJS这个脚手架,不为什么,这个脚手架和Vue Cli比较类似,至少路由配置和Vue Router很类似。

不要滥用useCallback、useMemo

1、不推荐大量使用useCallback和useMemo,更推荐通过不订阅视图无关的数据、细化组件粒度(将更新部分抽离成单独组件、将不需要 re-render 的部分抽离,以插槽形式渲染),减少re-render影响范围。

2、如果使用函数式组件,应该使用useCallback这个hook。关于useCallback的使用,请参考本知识库的React进阶一文。因为React在解析JSX时候需要将style对象解析成css style字符串。更推荐将样式写在CSS中。

3、react很烦,一但更新数据,render依次diff刷新节点,拦都拦不住。useCallback和useMemo就是拦住他刷新的方法。假设React组件中有个button,同时声明了click方法,每次render时,button和click方法都会重新render。

4、useMemo第一个参数接收一个函数第二个参数接收一个数组 useMemo(()=fn, []) ,数组里面是依赖,只有数组里面的依赖发生变化,函数才会执行。useCallback(fn, deps) 相当于 useMemo(() = fn, deps) 。

5、useCallback 缓存的是 方法的引用 useMemo 缓存的则是 方法的返回值 使用场景是 减少不必要的子组件渲染 若要实现 class 组件的 shouldComponentUpdate 方法,可以使用 React.memo 方法。

从Vue2.0到React17——React开发入门

本专栏将按照这个思路带领你从Vue0入门React17。 首先得选择一个脚手架搭建一个React工程,React有很多脚手架,为什么选择UmiJS这个脚手架,不为什么,这个脚手架和Vue Cli比较类似,至少路由配置和Vue Router很类似。

很明显,我们封装的是一个针对React的组件库,并不应该把React引用进去。一般我们可以采用externals的方式对其进行处理。

在Vue2中是使用 template 的,这点使用 Vue 的同学们都知道,而在 React 中使用的是 JSX , JSX 是一个看起来很像 XML 的 JavaScript 语法扩展。

以上内容为新媒号(sinv.com.cn)为大家提供!新媒号,坚持更新大家所需的前端知识。希望您喜欢!

版权申明:新媒号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 k2#88.com(替换@) 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023-09-23 15:07
下一篇 2023-09-23 15:07

相关推荐

发表回复

登录后才能评论