SF
前端
前端
注册登录
关注博客
注册登录
主页
关于
RSS
React系列——React Context
Cymiran
2019-01-04
阅读 4 分钟
22.1k
1、父组件向子组件传递数据(状态)时,是在调用子组件的时候通过参数传递给子组件,子组件通过this.props进行接收;2、子组件如果更改父组件的一些属性,则是通过父组件定义的方法来传递给子组件,子组件调用更改;3、如果父组件想要更改子组件的一些状态时,通过ref进行标记,可以获取子组件的所有信息,从而调用子组件...
Flutter系列(一)——简单初识Flutter
Cymiran
2018-11-10
阅读 1 分钟
4.4k
Flutter背景 {代码...} 目标 {代码...} 现状 {代码...} 优势 {代码...} 缺点 {代码...}
MobX学习之旅
Cymiran
2018-07-06
阅读 5 分钟
4.8k
一、MobX {代码...} 二、MobX与其他状态管理工具的区别 {代码...} 三、MobX核心模块 {代码...} Observable {代码...} Computed {代码...} Action {代码...} Autorun {代码...} 但是,如果仅仅想要在被观察的变量有变化的时候触发,而不是立即执行autorun,那么我们可以用到reaction了; Reaction {代码...} 四、Mobx-rea...
react如果你想为一个组件返回多个元素怎么办?
Cymiran
2018-06-08
阅读 2 分钟
10.6k
react中组件一般都是只返回一个父节点包含的元素,而我们有时候就是想返回多个元素怎么办,当然react团队也帮你想到了,两种方式:1,以数组的形式返回;2,创建React片段
react 代码优化(一) ——事件处理
Cymiran
2018-05-10
阅读 2 分钟
2k
React的事件处理 1、React 的事件绑定属性的命名要采用驼峰时写法, 不能小写 2、要传入一个函数作为事件处理函数,不能是字符串 {代码...} 3、阻止默认行为preventDefault {代码...} 4、事件绑定 1、在构造函数中使用bind绑定this {代码...} 2、使用属性初始化器语法绑定this(实验性) {代码...} 3、在调用的时候使用bin...
前端方便面
Cymiran
2018-05-07
阅读 1 分钟
2.9k
技术 CSS 前端布局推进剂 - 间距规范化 利用CSS变量实现令人震惊的悬浮效果 Flexbox 很棒,但有些情况不适用 CSS布局说——可能是最全的 【图片版】学习CSS网格布局 使用CSS Grid的九大误区 图解CSS Flexbox布局 CSS Grid 布局揭秘 JS ECMAScript 2016, 2017, 和2018中新增功能 探索 Redux4.0 版本迭代 论基础谈展望(对比...
json转换Excel
Cymiran
2018-04-08
阅读 4 分钟
25.5k
FileReader()对象方法:1、abort():void 终止文件读取操作2、readAsArrayBuffer(file):void 异步按字节读取文件内容,结果用ArrayBuffer对象表示(二进制缓存区) 将二进制数据存放在其中,大小与源文件一样,通过此方式,可以直接在网络中传输二进制内容3、readAsBinaryString(file):void 异步按字节读取文件内容,结果为...
数组、伪数组、字符串、对象常用api大聚会
Cymiran
2017-12-27
阅读 4 分钟
2.2k
改变数组的 push、pop、unshift、shift,sort、reverse、splice不改变原数组 返回新数组 concat、join,slice
经典原型链、继承解析
Cymiran
2017-12-27
阅读 4 分钟
1.5k
我们知道任何一个函数都存在一个prototype属性,他是个对象,这个对象 我们就叫他原型对象这个原型对象本身也自带两个属性:constructor 和 proto
前端常用的设计模式剖析——单例、观察者、工厂、策略模式
Cymiran
2017-12-26
阅读 5 分钟
5.1k
有人说设计模式是能被反复使用、多数人知道的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码,让代码更容易被他人理解、保证代码的可靠性。
消息的即时推送——net实现、websocket实现以及socket.io实现
Cymiran
2017-12-23
阅读 3 分钟
8.2k
即时通讯 即时通讯是一种客户端与服务端的通信服务,例如聊天,消息推送等,方式有三种: node内置net模块实现的通信方式 WebSocket的通信方式 Socket.io的通信方式 这三种通信方式都很类似,服务端: {代码...} 客户端: {代码...} Websocket实现简单聊天窗口 1、服务端 新建文件WsServer.js {代码...} 2、客户端 新建h...
Angular、Vue、React三大框架鼎力2017
Cymiran
2017-12-21
阅读 2 分钟
10.4k
期初在前三四年或者更早,前端还没被完全分离出来,原生js开发前端页面,似乎并不优雅,好比我们盖房子,一块砖一块砖的盖,很耗时,也不方便维护,渐渐地jQuery库的产生,提高了开发人员的效率,减少了浏览器的兼容,一时间很多涨粉,到现在一些旧的项目仍然在使用,but,他没有mvc,mvvm构架,需要自己进行配置。
百度移动端首页秒开学习
Cymiran
2017-12-21
阅读 2 分钟
4.2k
百度首页秒开 我们打开手机端看百度首页,搜索框,新闻,图片,tab标签... 秒开... 那他是怎么做到呢? 静态文件放置 百度首页是没有外链的,js,css代码在上线之前都编译到了html里 缓存 对于一些页面不变的静态文件,例如html/css/javascript如果有些不变的,就会把它存到本地,例如localStorage,可以通过对标签添加...
cookie、session、token案例剖析
Cymiran
2017-12-20
阅读 4 分钟
5.5k
我之前的文章有写过,我们知道在H5的本地存储没出来之前,前端需要存储的数据基本用cookie来存储,而且cookie能在服务端与浏览器之间进行数据传送,当服务端把一些用户信息返回给前端后,前端需要存起来,方便调用,但是他存的数据有限,只能存4k的数据量
web前端攻击技术与防范——XSS、CSRF、网络劫持、控制台注入、钓鱼
Cymiran
2017-12-19
阅读 2 分钟
13.7k
攻击者可通过这种方式拿到用户的一些信息,例如cookie 获取敏感信息,甚至自己建网站,做一些非法的操作等;或者,拿到数据后以用户的身份进行勒索,发一下不好的信息等。
vue滚动行为
Cymiran
2017-12-19
阅读 1 分钟
3.1k
有人问道如何记录vue页面的滚动条位置,再次载入组件的时候页面滚动到记录的位置? {代码...}
BFC!Repaint!Reflow
Cymiran
2017-12-18
阅读 1 分钟
2.8k
很多人都问道BFC是什么,为什么父元素加上overflow:hidden/定位/inline-block会使得脱离文档流的子元素会自动撑开父元素?
前端存储浅谈——cookie、sessionStorage、localStorage
Cymiran
2017-12-18
阅读 2 分钟
6.3k
存于客户端,由于http协议是无状态的,只要客户端与服务端数据交换完,就会断掉链接,如果再请求 就再次链接,而服务器是无法保存这种链接的状态,只有不停地链接、断链接,所以需要cookie来做一个身份认证,再次请求的时候服务器会根据这个身份id进行用户判断。
nodejs错误优先?
Cymiran
2017-12-14
阅读 1 分钟
6k
回调函数的第一个参数,必须是错误对象error 如果有错误发生,错误将通过第一个参数error返回 原因是函数在执行的时候 分为请求阶段 和 处理阶段 在这两段之间会抛出异常就无法捕捉 只能当做第一个参数
"回调地狱"——优雅解决之Promise 实例
Cymiran
2017-12-14
阅读 3 分钟
11k
”回调地狱“也叫”回调金字塔“,我们平时写代码的时候 js如果异步 回调是不可避免的例如 ajax不断的进行异步请求数据 回调方法里还要对数据进行处理,继续回调...形成回调地狱这会使得我们的代码可读性变差,出现问题 不好调试 也会导致性能下降
nodejs爬取网站图片.....
Cymiran
2017-12-13
阅读 2 分钟
6.4k
nodejs来实现一个爬虫功能 ,爬取豆瓣图片 原理: 爬虫是最明显的IO密集型应用场景,显然用node,使得I/O等待开销小数据挖掘比较方便 借助express模块来搭建node服务 并使用request模块获取目标页面的html代码 下载cheerio模块对html代码做处理(cheerio类似jQuery的语法,所以好用又方便) 环境配置: {代码...} (1)引入各...
nvm——node的包管理工具
Cymiran
2017-12-12
阅读 1 分钟
5.5k
nvm 一个用来管理node版本工具,可以安装 切换 不同版本的node提高开发效率 1、执行脚本安装nvm {代码...} 2、使用淘宝镜像源来安装 {代码...} 3、常用命令 {代码...}
node初探 以及与 浏览器的 差异
Cymiran
2017-12-12
阅读 1 分钟
1.7k
node初体验 1、node环境 {代码...} 2、V8引擎 {代码...} 3、三大特点:单线程、事件驱动、非阻塞I/O {代码...} 4、差异 {代码...}
gulp 与 Webpack 的 异曲同工之处
Cymiran
2017-12-11
阅读 1 分钟
1.6k
gulp {代码...} webpack {代码...} 综上所述 {代码...}
gulp——用自动化构建工具增强你的工作流程
Cymiran
2017-12-11
阅读 4 分钟
2.3k
安装 1、全局安装 {代码...} 2、作为项目的开发依赖(devDependencies)安装: {代码...} 3、 在项目根目录下创建一个名为 gulpfile.js 的文件: {代码...} 4、 运行 gulp: {代码...} api(1) gulp.src() {代码...} (2) gulp.task() {代码...} (3) gulp.watch() {代码...} (4) 当你想直接gulp启动项目的话,会使用 {代码...
react七——react-redux
Cymiran
2017-12-11
阅读 3 分钟
2.2k
比起redux新增 两个模块 1、Provider 组件来对Router进行包裹,并传入store,这样在内部组件的其他组件都可以共享store的数据 并且对其进行更改
webpack——一站到底二
Cymiran
2017-12-09
阅读 5 分钟
1.7k
续webpack一——一站到底 (7)webpack-dev-server 启动一个本地服务 {代码...} (8)webpack.BannerPlugin 在文件头添加注释 (9)webpack.DefinePlugin 定义环境变量 {代码...} (10)但是如果打包完文件体积还是太大怎么办呢? {代码...} (11) 分析打包后项目用到的各种包的大小 webpack-visualizer-plugin {代码...} 其他 1.版...
webpack——一站到底一
Cymiran
2017-12-07
阅读 6 分钟
1.4k
加载器 Loader webpack本身只理解JavaScript,sass、css、html、jpg等文件需要loader进行处理,转换为模块 常用的有: babel-loader {代码...} sass-loader、css-loader、style-loader 下载:npm i css-loader style-loader -D //css loader {代码...} url-loader 下载:npm i url-loader -D {代码...} vue-loader {代码....
React二——虚拟dom、组件、组建通信
Cymiran
2017-12-07
阅读 2 分钟
1.8k
react效率极高,它可以创建存放组件的虚拟DOM,这一特点为开发人员提供了高度灵活性和惊人的性能收益 因为React能够提前计算出DOM中有哪些内容需要更改,并对dom做出相应的更新,通过这种方式,避免了及其消耗性能的DOM 从而大幅度提高工作效率
React六——Redux
Cymiran
2017-12-07
阅读 3 分钟
1.7k
数据流 {代码...} 1、创建store.js {代码...} 2、创建reducer.js {代码...} 3、actionCreator.js {代码...} view层 {代码...}
1
(current)
2
下一页
1
(current)
下一页