Nancy's Studio.

Nancy's Studio.

it's better to burn out than to fade away.

React源码阅读
OverviewReact 核心代码在源码的 packages/react 目录中。在 npm 上发布为 react包。相应的独立浏览器构建版本称为 react.js,它会导出一个称为 React 的全局对象。 渲染器同样位于 packages/目录下,React DOM Renderer 将 React 组件渲染成 DOM。它实现了全局 ReactDOMAPI,这在npm上作为 react-dom 包。这也可以作为单独浏览器版本使用,称为 react-dom.js,导出一个 ReactDOM 的全局对象。 Fiber reconciler源代码在 packages/react-reco...
重读React文档的一些记录
React.Component组件生命周期常用生命周期的图谱如下所示: 组件实例被创建并插入DOM中时,其生命周期调用顺序为: constructor(props) static getDerivedStateFromProps(props, state) render() componentDidMount() getDerivedStateFromProps()在初始挂载以及后续更新时都会被调用(每次渲染前都会触发此方法),不常用,可以让组件在props变化时更新state,这种派生state需要保守使用,而且如果一个派生state的值也被setState更新,那这个值就不是单...
ES6常用新特性整理
ES6常用新特性整理letlet与var的不同 let所声明的变量只在所在的块级作用域有效。比如花括号内,还有for循环每轮循环的i都是新的变量,而且设置循环变量的部分是父作用域,而循环体内部是单独的子作用域,两者也是互不干扰的。 let不存在变量提升,变量必须要在声明之后才能使用。 只要块级作用域内使用let声明了变量,那么这个变量就被绑定到这个区域,不受外部影响。 不允许重复声明。 块级作用域let实际上为JS在全局作用域和函数作用域的基础上新增了块级作用域。同一个变量名可以在不同的层级重新声明,每一层都是一个单独的作用域,互不影响。 1234567function f() ...
Redux学习笔记
介绍前述Redux:JavaScript 状态容器,可预测的状态管理机 。Redux的思想继承自Facebook的Flux架构,但比Flux更加简洁易用。 安装稳定版: 1npm install --save redux 多数情况下,还需要使用React 绑定库和开发者工具 12npm install --save react-reduxnpm install --save-dev redux-devtools 主要组成Redux应用的主要组成为:action、reducer、store。 action:是Redux中信息的载体, store 的唯一信息来源。一般通过 store.di...
使用express+MySQL实现数据接口并部署
创建123npm initnpm install express --savenpm install ejs 创建main.js(init的时候选的文件名)和api、config、routers、src、views文件夹 项目结构 12345678910111213|── main.js //入口文件|── src //静态资源目录│ ├── css│ ├── js│ └── images|── api //接口目录│ └── addUser.js //接口文件|—— config //配置文件目录| └── config.json|—— route...
JavaScript数据结构与算法学习
数组添加、插入元素1234567891011121314var numbers = [0,1,2,3,4,5];//向数组尾部添加number.push(6);number.push(7,8,9); //[0,1,2,3,4,5,6,7,8,9]//插入元素到首位for (var i = numbers.length; i >= 0; i--) { numbers[i] = numbers[i-1];}numbers[0] = -1;//或者用unshift()方法numbers.unshift(-2);numbers.unshift(-5,-4,-3)...
JS之闭包和原型那些事儿
Part1:作用域和闭包作用域是什么?我们需要一套设计良好的规则用于存储变量,并且之后可以方便地找到这些变量,这套规则被称为作用域。 JS的编译原理在传统编译语言的流程中,程序的源代码在被执行前会经历三个步骤,统称为“编译”。 分词/词法分析 在这个过程中由字符组成的字符串被分解成有意义的代码块,这些代码块即词法单元。比如var a = 2;会分解成var、a、=、2、;。 解析/语法分析 在这个过程中词法单元流(数组)转换成一个由元素逐级嵌套组成的代表程序语法结构的树,即“抽象语法树(AST)”。 代码生成 将抽象语法树转换成可执行代码。比如将var a = 2;的AST转化为一...
Ajax学习笔记
认识AjaxAjax:Asynchronous Javascript and XML (即异步的javascript和XML),是一种在无需重新加载整个页面的情况下能够更新部分页面的技术。通过在后台跟服务器进行少量的数据交换,网页就可以实现异步局部更新。 运用HTML和CSS实现页面,然后构建XMLHttpRequest对象进行页面与web服务器间的异步数据交换,页面获取到响应信息后运用Javascript操作DOM,实现局部动态更新。 Ajax-XMLHttpRequest对象构建123456var request;if(window.XMLHttpRequest){ ...
深入学习CSS布局
0x00前言CSS是个神奇的东西,可以把一个简陋的网页修饰得十分高大上,同时对于初学者来说很好上手,几天就可以快速入门做出一些网页。但是实际上想把CSS里面的知识学透也不是一件容易的事,因为实现某种效果往往会有多种不同的方式,几个常见的属性结合在一起很有可能会得到意想不到的结果,这里面有很多东西要去考虑,需要多去练习和总结才能做到灵活运用。 0x01涉及到的一些基本属性position 值 描述 absolute 生成绝对定位的元素,相对于 static 定位(unpositioned)以外的第一个父元素进行定位。 元素的位置通过 “left”, “top”, “right”...
Sqli-Labs Study
Sqli-Labs注入学习笔记环境搭建 Ubuntu16.04+apache2+php5.6+mysql5.7 关于平台搭建的相关教程戳这里 搭建完成后进入localhost/sqli-labs-master,点链接看到map 再点Less-1,如果出现如下页面说明数据也已搭建完毕。 现在可以开始进行注入的学习了 Page-1(Basic Challenges)Less-1 GET-Error based-Single quotes-String localhost/sqli-labs-master/Less-1/?id=1'出现报错:You have an error ...
Nancyfan
witness me
FRIENDS
github hexo