- 1. 基本概念高阶组件是React 中一个很重要且较复杂的概念,高阶组件在很多第三方库(如Redux)中都被经常使用,即使你开发的是普通的业务项目,用好高阶组件也能显著提高你的代码质量。高阶组件的定义是类比于高阶函数的定义。高阶函数接收函数作为参数,并且返回值也是一个函数。类似的,高阶组件接收React组件作为参数,并且返回一个新的React组件。高阶组件本质上也是一个函数,并不是一个组件,... 1. 基本概念高阶组件是React 中一个很重要且较复杂的概念,高阶组件在很多第三方库(如Redux)中都被经常使用,即使你开发的是普通的业务项目,用好高阶组件也能显著提高你的代码质量。高阶组件的定义是类比于高阶函数的定义。高阶函数接收函数作为参数,并且返回值也是一个函数。类似的,高阶组件接收React组件作为参数,并且返回一个新的React组件。高阶组件本质上也是一个函数,并不是一个组件,...
- 做过移动开发的同学都应该清楚,侧滑删除是移动开发中的一个常见功能。在官方没提供侧滑组件之前,要实现侧滑效果需要使用第三方库,如react-native-swipe-list-view。不过随着React Native 0.50版本的发布,系统新添加SwipeableFlatList组件,SwipeableFlatList是在FlatList基础上实现的侧滑显示菜单的功能,大大的方便了开发。S... 做过移动开发的同学都应该清楚,侧滑删除是移动开发中的一个常见功能。在官方没提供侧滑组件之前,要实现侧滑效果需要使用第三方库,如react-native-swipe-list-view。不过随着React Native 0.50版本的发布,系统新添加SwipeableFlatList组件,SwipeableFlatList是在FlatList基础上实现的侧滑显示菜单的功能,大大的方便了开发。S...
- 需要组件之进行通信的几种情况父组件向子组件通信子组件向父组件通信跨级组件通信没有嵌套关系组件之间的通信1. 父组件向子组件通信React数据流动是单向的,父组件向子组件通信也是最常见的;父组件通过props向子组件传递需要的信息Child.jsximport React from 'react';import PropTypes from 'prop-types';export defaul... 需要组件之进行通信的几种情况父组件向子组件通信子组件向父组件通信跨级组件通信没有嵌套关系组件之间的通信1. 父组件向子组件通信React数据流动是单向的,父组件向子组件通信也是最常见的;父组件通过props向子组件传递需要的信息Child.jsximport React from 'react';import PropTypes from 'prop-types';export defaul...
- 以前在解决一次flatlist没有局部刷新的问题时,写了一篇博客里面提到了官方的一篇文档叫做reconciliation。前阵子有人问我react的virtualDomTree的diff算法是怎么实现的,有没做什么优化点。我知道是这篇文章里的内容,但当时却说不清楚,这让我觉得我对这篇文章其实理解的并不够,所以把它再看一遍,然后把自己的理解记录下来,但这并不是翻译,完全是按照我自己的理解来写... 以前在解决一次flatlist没有局部刷新的问题时,写了一篇博客里面提到了官方的一篇文档叫做reconciliation。前阵子有人问我react的virtualDomTree的diff算法是怎么实现的,有没做什么优化点。我知道是这篇文章里的内容,但当时却说不清楚,这让我觉得我对这篇文章其实理解的并不够,所以把它再看一遍,然后把自己的理解记录下来,但这并不是翻译,完全是按照我自己的理解来写...
- React Native(简称RN)开发的app大部分都可以在JS端完成,但是也有一些复杂的功能是需要原生端来完成的,或者是在原生项目中集成RN,此时RN与原生端就不可避免的需要进行交互,比如页面跳转和数据传递。关于RN与原生更深层次的调用原理,及如何自己封装RN的原生组件,可以参考《React Native移动开发实战》(ps:白皮版)。原生跳转RN是非常简单的,本文不做讲解,本文主要分析... React Native(简称RN)开发的app大部分都可以在JS端完成,但是也有一些复杂的功能是需要原生端来完成的,或者是在原生项目中集成RN,此时RN与原生端就不可避免的需要进行交互,比如页面跳转和数据传递。关于RN与原生更深层次的调用原理,及如何自己封装RN的原生组件,可以参考《React Native移动开发实战》(ps:白皮版)。原生跳转RN是非常简单的,本文不做讲解,本文主要分析...
- 在做React Native开发的时候避免不了的需要原生模块和JS之间进行数据传递,原生模块向JS传递数据可以通过Callbacks、Promises和事件监听等三种方式来实现。Callbacks方式说起Callbacks大家都不陌生,它是最常用的设计模式之一。无论是Java,Object-c,C#,还是JavaScript等都会看到Callbacks的身影。原生模块支持Callbacks类... 在做React Native开发的时候避免不了的需要原生模块和JS之间进行数据传递,原生模块向JS传递数据可以通过Callbacks、Promises和事件监听等三种方式来实现。Callbacks方式说起Callbacks大家都不陌生,它是最常用的设计模式之一。无论是Java,Object-c,C#,还是JavaScript等都会看到Callbacks的身影。原生模块支持Callbacks类...
- 最近几年,随着年龄的增长,自己和年轻同事聊天的时候总有些口头禅,比如“要是当年多学点这个就好了”,“要是以前有人告诉这个诀窍,我可能早就发了”,这些话听上去很老气横秋,但却让我深刻意识到自己以前的失误,那就是自己太关注技术,太关注自我了,没有全面的思考什么才是重要的事情,当然现在醒悟过来也不算晚,以后我思考的时候会更加均衡,今天就和年轻程序员简单聊聊,希望你们不要像我以前一样。 最近几年,随着年龄的增长,自己和年轻同事聊天的时候总有些口头禅,比如“要是当年多学点这个就好了”,“要是以前有人告诉这个诀窍,我可能早就发了”,这些话听上去很老气横秋,但却让我深刻意识到自己以前的失误,那就是自己太关注技术,太关注自我了,没有全面的思考什么才是重要的事情,当然现在醒悟过来也不算晚,以后我思考的时候会更加均衡,今天就和年轻程序员简单聊聊,希望你们不要像我以前一样。
- 虽然我们对人工神经网络ANN有了初步的了解,还实现了一个简单的三层神经 网络来对虚拟医疗数据进行分类。可在中间还忽略了很多细节,例如有没有其他的 激活函数可供选择?损失函数只能使用均方误差吗?如何确定梯度下降算法的参数?除了上述数学问题外,还有如何解决训练时模型预测的准确率不再提升的问题?当隐层神经元设置过多引起过度拟合时,如何通过减少过度拟合的情况来 提高网络模型的预测准确率?不懂机器学习... 虽然我们对人工神经网络ANN有了初步的了解,还实现了一个简单的三层神经 网络来对虚拟医疗数据进行分类。可在中间还忽略了很多细节,例如有没有其他的 激活函数可供选择?损失函数只能使用均方误差吗?如何确定梯度下降算法的参数?除了上述数学问题外,还有如何解决训练时模型预测的准确率不再提升的问题?当隐层神经元设置过多引起过度拟合时,如何通过减少过度拟合的情况来 提高网络模型的预测准确率?不懂机器学习...
- 作为一个程序员,在我的手机上有几个必备软件,比如 Pocket、Feedly、Stack Exchange,这些 App 大部分都是国外的,但有一款中国人开发的 App 我一直没有删除,那就是开发者头条,今天我就回顾下它,也推荐给大家。 作为一个程序员,在我的手机上有几个必备软件,比如 Pocket、Feedly、Stack Exchange,这些 App 大部分都是国外的,但有一款中国人开发的 App 我一直没有删除,那就是开发者头条,今天我就回顾下它,也推荐给大家。
- 自制编程语言和虚拟机,这是一个看似很深奥的课题,也涉及当今互联网流行的主题,许多技术人员对其心驰神往,但要领悟其精髓步履维艰。《自制编程语言》循序渐进、由浅到深地讲解了丰富的基础知识,覆盖了常见的编译原理入门知识,更难能可贵的是,作者讲解的知识具有其独特的理解和视角,相信本书能让读者能够受益匪浅。本文涉及一些编译原理基础,我担心没学过编译原理的读者会觉得吃力,因此顺带介绍了编译原理的基础知识... 自制编程语言和虚拟机,这是一个看似很深奥的课题,也涉及当今互联网流行的主题,许多技术人员对其心驰神往,但要领悟其精髓步履维艰。《自制编程语言》循序渐进、由浅到深地讲解了丰富的基础知识,覆盖了常见的编译原理入门知识,更难能可贵的是,作者讲解的知识具有其独特的理解和视角,相信本书能让读者能够受益匪浅。本文涉及一些编译原理基础,我担心没学过编译原理的读者会觉得吃力,因此顺带介绍了编译原理的基础知识...
- 有没有感觉设计一门语言实在是太有意思了,可以自定义语法规则,我的“地盘听我的”。脚本语言的功能本书设计一门纯粹的面向对象脚本语言,任何语言都有个名词,这里给这个语言起个名字——sparrow(麻雀)。它支持的功能如下。1 变量支持局部变量和局部变量的定义。变量可引用、赋值。内部复合数据类型以大写字符开头,如System.print()2 基本数据类型数值:包括整数和浮点数。字符串:包括普通字... 有没有感觉设计一门语言实在是太有意思了,可以自定义语法规则,我的“地盘听我的”。脚本语言的功能本书设计一门纯粹的面向对象脚本语言,任何语言都有个名词,这里给这个语言起个名字——sparrow(麻雀)。它支持的功能如下。1 变量支持局部变量和局部变量的定义。变量可引用、赋值。内部复合数据类型以大写字符开头,如System.print()2 基本数据类型数值:包括整数和浮点数。字符串:包括普通字...
- dl<dl> 标签定义了一个包含术语定义以及描述的列表。dt<dt> 标签用于定义列表中的项目(即术语部分)。dd<dd> 标签用于定义列表中项目的描述部分。实例一个定义列表:计算机用来计算的仪器 ... ...显示器以视觉方式显示信息的装置 ... ...ol<ol> 标签用于定义有序列表。属性属性值描述reversedreversed规定列表顺序为降序。(9, 8, 7, …)start... dl<dl> 标签定义了一个包含术语定义以及描述的列表。dt<dt> 标签用于定义列表中的项目(即术语部分)。dd<dd> 标签用于定义列表中项目的描述部分。实例一个定义列表:计算机用来计算的仪器 ... ...显示器以视觉方式显示信息的装置 ... ...ol<ol> 标签用于定义有序列表。属性属性值描述reversedreversed规定列表顺序为降序。(9, 8, 7, …)start...
- 简介WebSocket是基于TCP的一种新的网络协议,并在2011年被IETF定为标准的全双工通信协议,它实现了客户端与服务器全双工通信。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。众所周知,在WebSocket出... 简介WebSocket是基于TCP的一种新的网络协议,并在2011年被IETF定为标准的全双工通信协议,它实现了客户端与服务器全双工通信。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。众所周知,在WebSocket出...
- 自从上文《看 Laravel 源代码了解 ServiceProvider 的加载》,我们知道 Application (or Container) 充当 Laravel 的容器,基本把所有 Laravel 核心的功能纳入这个容器里了。我们今天来看看这个 Application / Container 到底是什么东西?了解 Container 之前,我们需要先简单说说 Inversion of... 自从上文《看 Laravel 源代码了解 ServiceProvider 的加载》,我们知道 Application (or Container) 充当 Laravel 的容器,基本把所有 Laravel 核心的功能纳入这个容器里了。我们今天来看看这个 Application / Container 到底是什么东西?了解 Container 之前,我们需要先简单说说 Inversion of...
- 这两天迁移了一个过去的Web服务到另外一个服务器,本来按照提前设定的步骤,操作结果都很顺利。但是谁想,迁移完成内部测试,“咣”,HTTP ERROR 500。 这两天迁移了一个过去的Web服务到另外一个服务器,本来按照提前设定的步骤,操作结果都很顺利。但是谁想,迁移完成内部测试,“咣”,HTTP ERROR 500。
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中 -
一个AI团队帮你写代码:华为云码道Agent Space实战2026/06/25 周四 19:00-21:00
张翰文-华为云码道工程师/郭英旭-青软创新科技集团股份有限公司 软件架构师
本场直播聚焦华为云码道Agent Space两大模式:研发办公、代码开发,亲身体验从需求到代码的AI自动化能力。实操演示基于华为 CodeArts CLI,依托 OpenSpec 规格体系从零搭建业务项目。
回顾中
热门标签