摘要: 1. cmd 和 amd 在浏览器中,受网络和浏览器渲染的制约,不能采用同步加载,只能采用异步加载。于是 AMD 规范应运而生 2. AMD AMD(Asynchronous Module Definition),意思就是"异步模块定义"。它采用异步方式加载模块,制定了定义模块的规则,这样模块和模块 阅读全文
posted @ 2019-02-21 11:09 月山 阅读(4290) 评论(0) 推荐(0) 编辑
摘要: CommonJs概述 主要是单个文件定义的变量,函数,类都是私有的,其他文件不可见,单位的作用域 通过 exports(modules.exports)对外暴露接口,通过 require 加载模块 node.js 按照 CommonJS 规范实现了模块系统 1. exports 模块导出 2. re 阅读全文
posted @ 2019-02-20 20:30 月山 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 组件 1. 无状态组件 在React中,组件的名字必须用大写字母开头,而包含该组件定义的文件名也应该是大写字母(便于区分,也可以不是)。 无状态组件是纯展示组件,仅仅只是用于数据的展示,只根据传入的props来进行展示,不涉及到state状态处理,通过函数式的方式来创建一个无状态函数式组件(大多数组 阅读全文
posted @ 2019-02-15 10:15 月山 阅读(615) 评论(0) 推荐(0) 编辑
摘要: audio 在浏览器中自动播放 autoplay 属性 autoplay 属性规定一旦音频就绪马上开始播放。 如果设置了该属性,音频将自动播放。 使用 autoplay 属性进行播放 监听 canplaythrough 事件进行播放 / Created by easterCat on 2017/10 阅读全文
posted @ 2019-02-14 19:11 月山 阅读(13609) 评论(1) 推荐(1) 编辑
摘要: combineReducers combineReducer 是将众多的 reducer 合成通过键值映射的对象,并且返回一个 combination 函数传入到 createStore 中 合并后的 combination 能够调用个子 reducer,并且对 state 状态进行更新 源码: i 阅读全文
posted @ 2019-01-25 22:40 月山 阅读(1253) 评论(0) 推荐(0) 编辑
摘要: 问题 vue 跳转外部链接问题,当跳转的时候会添加在当前地址后面 这时将 url 前面添加响应的 (http:// 或 https://) var p = window.location.protocol; var a = document.createElement("a"); a.setAttr 阅读全文
posted @ 2019-01-25 11:26 月山 阅读(32411) 评论(1) 推荐(2) 编辑
摘要: vscode 的插件 必须 1. Chinese (Simplified) Language Pack for Visual Studio Code 2. Markdown Preview Enhanced 3. Debugger for Chrome 4. Material Icon Theme 阅读全文
posted @ 2019-01-25 10:00 月山 阅读(3565) 评论(0) 推荐(0) 编辑
摘要: flex思维导图 {"name":"flex","children":[{"name":"传统布局方式","children":[{"name":"display position float"}]},{"name":"设置容器display:flex"},{"name":"设置行内元素容器disp 阅读全文
posted @ 2019-01-18 16:42 月山 阅读(399) 评论(0) 推荐(0) 编辑
摘要: promise promise 是 es6 提出的一个异步解决方案,比传统回调事件的写法更加合理更加强大,主要还是优雅 promise 有 pending(等待中),fulfilled(已成功),rejected(已失败),只有异步操作的结果才能够将状态改变,且只会有 pending fulfill 阅读全文
posted @ 2019-01-16 15:53 月山 阅读(344) 评论(0) 推荐(0) 编辑
摘要: redux 的概述 随着 javascript 单页应用的不断发展,javascript 需要管理比以往都要多的状态,管理不断变化的 state 非常困难,数据流动不断变的模糊不可预测,代码的开发与维护成为了变得越来越困难.redux 这类状态管理框架变出现了,通过限制更新发生的时间和方式,来使 s 阅读全文
posted @ 2019-01-16 14:35 月山 阅读(466) 评论(0) 推荐(0) 编辑
摘要: XMLHttpRequest 使用 XMLHttpRequest 对象可以和服务器进行交互,可以获取到数据,而无需让整个页面进行刷新.这样 web 页面可以做到只更新局部页面,降低了对用户操作的影响. XMLHttpRequest 对象可以用于获取各种类型的数据,而不止是 xml,还支持 JSON, 阅读全文
posted @ 2019-01-13 18:30 月山 阅读(1507) 评论(0) 推荐(0) 编辑
摘要: 主体 php + phpstudy + phpstrom + xdebug + postman + vue + chrome 使用的是前后端分离的开发方式,vue 在 webpack 通过代理进行请求转接,之前在使用 node 开发的时候进行断点调试能够根据请求的接口到达断点地方,按步查询代码的执行 阅读全文
posted @ 2019-01-10 15:25 月山 阅读(948) 评论(0) 推荐(0) 编辑
摘要: 模块加载的简单实现 (function(win) { var baseUrl; var paths; var script_cache = {}; var script_queue = []; var setConfig = function(options) { if (!options) { o 阅读全文
posted @ 2019-01-08 19:53 月山 阅读(989) 评论(0) 推荐(0) 编辑
摘要: LAMP和LNMP LAMP==Linux+Apache+Mysql+PHP LNMP==Linux+Nginx+Mysql+PHP 安装nginx 安装mysql 安装php 开始配置 备份默认配置文件 修改默认配置文件,添加php支持 修改为以下内容并保存 重启Nginx或重新加载配置文件 写入 阅读全文
posted @ 2019-01-07 22:53 月山 阅读(302) 评论(0) 推荐(0) 编辑
摘要: React性能优化 记录一次利用 Timeline/Performance工具进行 React性能优化的真实案例 http://www.jianshu.com/p/9b0e9ef0a607 React性能优化总结 https://segmentfault.com/a/1190000007811296 阅读全文
posted @ 2019-01-06 17:26 月山 阅读(738) 评论(0) 推荐(0) 编辑
摘要: //Map() 原生object转Map对象 (只会转换第一层,注意和fromJS区别) //List() 原生array转List对象 (只会转换第一层,注意和fromJS区别) //fromJS() 原生js转immutable对象 (深度转换,会将内部嵌套的对象和数组全部转成immutable 阅读全文
posted @ 2019-01-06 17:23 月山 阅读(635) 评论(0) 推荐(0) 编辑
摘要: 安装git "git安装" 安装node和npm 先下载node "node下载" 下载完之后将node解压的desktop,然后将文件夹更改为node 之后添加到启动 安装anyproxy 用来解析http/https链接的内容,抓包工具 1. 2. 如果报'command is no found 阅读全文
posted @ 2019-01-06 14:55 月山 阅读(4529) 评论(0) 推荐(0) 编辑
摘要: 前端模块化 前端早期写代码都是全局变量满天飞,这种情况会造成全局命名空间污染,变量冲突等问题 后来采用了 js 的对象写法,添加一个单独的命名空间 这样就把变量挂载到 space 上了,而不是全局 window 上 亦或是挂载到原型上(构造函数) 面向对象一定程度上解决了命名冲突的问题,但是 js 阅读全文
posted @ 2019-01-01 11:36 月山 阅读(354) 评论(0) 推荐(0) 编辑
摘要: requireJS 是一个 AMD 规范的模块加载器主要解决的js开发的4个问题1. 异步加载,防止阻塞页面渲染2. 解决js文件之间的依赖关系和保证js的加载顺序3. 按需加载来实现一个 require 的实例目录结构如下: - 首先我们现在 require.html 中将 requireJS 引入> - 为了防止加载的时候阻塞,需要异步进行加载( async=”true” defer) 其... 阅读全文
posted @ 2017-04-27 14:04 月山 阅读(2728) 评论(0) 推荐(0) 编辑