谈谈react hooks UI与业务逻辑分离的必要性与技术方案

2022-11-10
阅读 5 分钟
1.9k
当前端业务复杂度上升到一定程度的时候,如何提升前端代码质量便成了老生常谈的话题。似乎前端总逃不开改他人代码,重构,修复bug的宿命。那么,我们要如何从项目代码层面,改变这一局面呢?才能保证项目A之于开发者B也是能有条不紊的介入开发,从而最大程度降低人员开销,实现真正降本提效呢?

mock-stores——简单易用的数据mock方案

2017-10-20
阅读 1 分钟
3.7k
mock-stores是一款简单易用的数据mock npm包,可以针对无法拦截ajax请求或者非ajax请求的项目做mock,简单易用仅需三步,便可完成整个过程。优点有:

使用hbuild快速构建现代化web应用

2017-05-23
阅读 4 分钟
4.9k
Hbuild使用hbuild-cli命令行工具,全局注册后可快速生成项目启动套件。你可以使用Hbuild生成一个h5项目,或者vue项目(默认搭配react-router,可自由选择vuex),或者react项目。该套件包含如下特点:

webpack打包分析与性能优化

2017-02-16
阅读 6 分钟
14.5k
在去年年末参与的一个项目中,项目技术栈使用react+es6+ant-design+webpack+babel,生产环境全量构建将近三分钟,项目业务模块多达数百个,项目依赖数千个,并且该项目协同前后端开发人员较多,提高webpack 构建效率,成为了改善团队开发效率的关键之一。

如何在React中做Ajax 请求?

2016-11-22
阅读 2 分钟
26.5k
如何在React中做Ajax 请求? 首先:React本身没有独有的获取数据的方式。实际上,就React而言,它甚至不知道有服务器画面的存在。 React只是简单地渲染组件,单独从两个地方获取数据:props 和 state。 因此,为了使用服务器的数据,你需要在你的组件(component)的props或state里拿到数据。 你可以将这个过程与服务和...

解决mac os sierra webstrom 触摸板过于灵敏的问题

2016-10-11
阅读 1 分钟
2.9k
然后前往 /library/Java/JavaVirtualMachines,把下载下来的文件解压出来,放在该目录下,然后打开webstorm,双击shift,具体如下图操作:

使用resume-master快速制作简历

2016-06-07
阅读 1 分钟
6.9k
resume-master 是一个简历生成器项目,该项目从json中读取数据,可部署到github pages 在线浏览,也可生成pdf格式简历。该项目使用Handlebars + LESS + Gulp进行构建,只需在resume.json中填入你的个人信息,然后在终端执行几个命令行即可快速构建属于您的个人简历。

超实用迷你js判断类库介绍

2016-02-26
阅读 9 分钟
11.8k
平时项目的开发难免遇到大量的逻辑判断,于是我将一些常用的判断封装成了一个js类库,judge.js是我用业余时间写的一个js判断类库,可以用来判断数据类型(isFunction,isObject,isJson,isArray等),判断浏览器内核,判断移动和PC端浏览器名称,判断用户设备类型(安卓设备,iOS设备等),判断安卓IOS系统版本和做一些存...

Node.js操作MongoDB数据库

2015-11-28
阅读 5 分钟
14k
使用Mongoose操作MongoDB Mongoose是基于node-mongodb-native开发的MongoDB nodejs驱动,可以在异步的环境下执行。 关于在Mac下安装和使用MongoDB可以看我之前的一篇文章: 文章传送门:Mac下安装MongoDB 及使用教程 MongoDB PATH环境变量配置 将mongodb添加到环境变量中:$ vim ~/.zshrc,添加如下命令行: {代码...} ...

CSS3 案例研究与学习

2015-11-13
阅读 4 分钟
5.8k
loading加载效果 效果如下所示,点击预览: [链接] box-shadow 属性 box-shadow: 投影方式,X轴偏移量,Y轴偏移量,阴影模糊半径,阴影扩展半径,阴影颜色; box-shadow可以多层阴影同时使用,每层阴影之间用逗号隔开。最先写的阴影将显示在最顶层 {代码...} 具有动感的loading动画效果 效果如下所示,点击预览: [链接] ...

理解和学习AngularJS(一)

2015-10-24
阅读 4 分钟
7.9k
框架是一种特殊的、已经实现了的WEB应用,你只需要对它填充具体的业务逻辑。这里框架是起主导作用的,由它来根据具体的应用逻辑来调用你的代码。框架有:knockout等。

使用Benchmark.js和jsPerf分析代码性能

2015-08-24
阅读 3 分钟
28.9k
如果您觉得文章对您有帮助,可以逐个点击以下链接,类似于Google ads,不需要您付出任何费用,每天都可以来点一次噢,费用将由广告商承担,give me a cup of coffee?

关于原生js的一些研究

2015-06-16
阅读 12 分钟
11.6k
前阵子忙于准备CET-6,没时间更新文章,之后大概一个月将忙于准备期末考,也应该不会更新了,今天趁周末有时间再更新一篇最近研究的一些东西吧。

github上值得关注的前端项目

2015-05-28
阅读 9 分钟
109k
该网站的资源都托管到了github,microjs.com是一个可以让你选择微型的js类库的网站,该网站里的js库都是压缩后不大于5KB的,非常实用

grunt和前端模块管理工具的简单使用

2015-05-19
阅读 13 分钟
15.4k
Grunt的运行工具具有两个版本,一个是服务器端的版本(grunt),另一个是客户端版本(grunt-cli)。这里我们主要使用客户端版本:

浅析jQuery整体框架与实现(下)

2015-05-15
阅读 13 分钟
7.1k
分析源码的过程总是成就感与挫败感相伴的,尤其是jquery这样庞大且晦涩难懂的源码,本文承接上一篇:浅析jQuery整体框架与实现(上),继续做更细致些的分析,上篇文章距离现在已经大半年了,本来是只打算写一篇,做个样子的,但看到那么多点赞和收藏的,于是架不住大家的热情,就偷偷把标题改了下,预示着还有下文。上...

详解PHP操作MySQL数据库

2015-05-06
阅读 5 分钟
16.9k
在Mac系统,我们可以使用MAMP Pro 软件来搭建本地服务器。安装好这款软件,网站的目录在 /Applications/MAMP/htdocs 文件夹里,只需将文件放入该文件夹中,就可以通过http://localhost:8888来访问了,或者通过点击如下红色下划线按钮来快速访问站点。

PHP数组操作详解

2015-05-02
阅读 7 分钟
14.6k
概述 要访问一个变量的内容,可以直接使用其名称。如果该变量是一个数组,可以使用变量名称和关键字或索引的组合来访问其内容。 像其他变量一样,使用运算符=可以改变数组元素的内容。数组单元可以通过 array[key] 语法来访问。 数组的基本操作 php定义数组: {代码...} 在PHP中声明数组的方式主要有两种: 1.用array()...

HTML5与移动端web学习笔记

2015-04-27
阅读 12 分钟
34.2k
手机网页开发。这部分跟web前端开发差别不大,使用的技术都是html+css+js。区别为手机浏览器是webkit的天下,pc端是IE的天下。

使用ionic框架开发移动hybrid应用

2015-04-19
阅读 4 分钟
30.1k
如果您觉得文章对您有帮助,可以逐个点击以下链接,类似于Google ads,不需要您付出任何费用,每天都可以来点一次噢,费用将由广告商承担,give me a cup of coffee?

关于一些前端js框架的源码研究

2015-04-13
阅读 7 分钟
10.1k
Underscore.js 没有对原生 JavaScript 对象进行扩展,而是通过调用 _() 方法进行封装,一旦封装完成,原生 JavaScript 对象便成为一个 Underscore 对象。

Backbone.js学习笔记(二)细说MVC

2015-04-11
阅读 8 分钟
12.8k
对于初学backbone.js的同学可以先参考我这篇文章:Backbone.js学习笔记(一) Backbone源码结构 {代码...} JS MVC职责划分 M 模型 {代码...} V 视图 {代码...} C 控制器/分发器 {代码...} 工具库 {代码...} 来源:[链接] Model指的是一条一条的数据,而集合Collection指的是对Model中的多条数据进行管理。 模型 Model 我...

JavaScript操作DOM的那些坑

2015-04-05
阅读 14 分钟
20.7k
firstChild 相当于 childNodes[0];lastChild 相当于childNodes[box.childNodes.length - 1]。

JavaScript原生对象及扩展

2015-03-30
阅读 14 分钟
27.8k
内置(Build-in)对象与原生(Naitve)对象的区别在于:前者总是在引擎初始化阶段就被创建好的对象,是后者的一个子集;而后者包括了一些在运行过程中动态创建的对象。

linux 下如何配置LAMP环境

2015-03-23
阅读 6 分钟
8.4k
1.准备 根据系统的不同,可能准备的文件也不同,我用的是Ubuntu Linux ,我已将以下五个文件打包,点击下方链接下载吧 {代码...} 百度网盘下载:Linux lamp环境安装包 2.安装mysql 在安装之前需要添加mysql组和用户 {代码...} 3.安装Apache {代码...} 4.安装libxml2 {代码...} 5.安装php {代码...} 配置 {代码...} linux...

【译】stackoverflow 关于JavsScript的热门问答

2015-03-21
阅读 7 分钟
9.9k
我曾尝试向一个27岁的朋友解释js闭包并且完全失败了。你会如何向一个有概念(例如,函数,变量等)的人解释,来弥补闭包知识,但不理解闭包本身?

使用gulp构建你的前端项目

2015-03-05
阅读 7 分钟
34.5k
gulp是新一代的前端项目构建工具,你可以使用gulp及其插件对你的项目代码(less,sass)进行编译,还可以压缩你的js和css代码,甚至压缩你的图片,gulp仅有少量的API,所以非常容易学习。 gulp 使用 stream 方式处理内容。Node催生了一批自动化工具,像Bower,Yeoman,Grunt等。

Java学习笔记(一)

2015-03-01
阅读 4 分钟
5.4k
java语言是面向对象的高级程序设计语言,它是编译型的语言,Java语言不使用指针,并提供了自动的垃圾回收机制,使得程序员不必为内存管理而担忧。java语言支持多线程,使得Java程序能够并行处理多项任务。java还具有动态性、类库丰富、高性能等特点

JavaScript 经典实例收集整理

2015-02-16
阅读 11 分钟
29.4k
异步加载也叫非阻塞模式加载,浏览器在下载js的同时,同时还会执行后续的页面处理。在script标签内,用js创建一个script元素并插入到document中,这种就是异步加载js文件了:

Mac下安装MongoDB 及使用教程

2015-02-10
阅读 4 分钟
44.7k
NoSql,全称是 Not Only Sql,指的是非关系型的数据库。下一代数据库主要解决几个要点:非关系型的、分布式的、开源的、水平可扩展的。原始的目的是为了大规模web应用,这场运动开始于2009年初,通常特性应用如:模式自由、支持简易复制、简单的API、最终的一致性(非ACID)、大容量数据等。NoSQL被我们用得最多的当数key...