
JAVASCRIPT
sky_Wolf丶
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JS Date对象浏览器兼容问题
一般 直接new Date() 是不会出现兼容性问题的,而 new Date(datetimeformatstring) 常常会出现浏览器兼容性问题,为什么,datetimeformatstring中的某些格式浏览器不兼容。1. 无参: //无参 所有浏览器都兼容var dateTime = new Date();2.日期参数://日期参数 格式1var dateTime = new D...转载 2018-04-14 15:26:54 · 318 阅读 · 0 评论 -
JS 前端导出CSV文件
前言: 长期以来,在做文件下载功能的时候都是前端通过ajax把需要生成的文件的内容参数传递给后端,后端通过Java语言将文件生成在服务器,然后返回一个文件下载的连接地址url。前端通过location.href = url或者window.open(url),完成文件的下载。如果希望在前端直接出发某些资源的下载,最方便快捷的方法就是使用HTML5原生的download属性。...原创 2019-07-25 17:47:29 · 1276 阅读 · 0 评论 -
React 项目实现多语言切换
前言: 在做项目过程中,遇到一个需求就是支持多语言,实现国际化的功能。感谢React社区的强大,提供了umi-plugin-locale插件来实现国际化的功能。首先我们是基于 Umi 搭建的项目。umi-plugin-locale约定 在 src/locales 中引入 相应的 js,例如 en-US.js 和 zh-CN.js,注意:文件名称要和locale的值要对...原创 2019-04-27 17:47:41 · 3388 阅读 · 0 评论 -
React 路由参数传递
React路由可以处理明确的url,也可以动态的去匹配 url中的参数路径。传参方式有三种:方式一: 通过params 1.路由表中 <Routepath=' /sort/:id ' component={Sort}></Route> 2.L...原创 2019-04-07 21:32:17 · 1358 阅读 · 0 评论 -
Redux 与路由
要开发一个富客户端应用,有一个东西必不可少,那就是路由(router)系统。在React生态环境中,React-Router是公认的中最优秀的路由解决方案。它提供了与React思想十分贴切的声明式的路由系统我们通过<Router>,<Route>这两个标签以及一系列的属性定义整个React应用的解决方案。一、路由的基本原理: 1、保证视图和URL的同步...原创 2019-04-07 11:00:59 · 741 阅读 · 0 评论 -
Redux 之middleware简介
一、middleware由来: 面对多种业务场景,Redux提供了 middleware 来扩展特定场景下的功能。例如:监听每个dispatch发送的每一个action。每个middleware处理一个相对独立的业务需求,通过串联不同的middleware实现变化多样的功能。action会先经过 middleware处理,在传给reducer来处理。/** * 输入系统日...原创 2019-04-06 19:26:41 · 218 阅读 · 0 评论 -
Redux 简介
一、Redux是什么? Redux的核心代码可以理解为一个库,同时强调与Flux类似的架构思想。它提供若干个API让我们去调用store,并能够去更新store中的最新状态。“React应用”是指使用了redux这个npm包并结合了视图层实现(例 React),及其他前端应用必备的组件,(路由库,Ajax请求库)组成的完整的类Flux思想的前端应用。二、Redux 三个原...原创 2019-04-06 17:21:23 · 909 阅读 · 0 评论 -
React Flux架构模式
前言: MVC是一种架构模式,它通过关注数据界面分离,来鼓励改进应用程序结构。MVC强制将业务数据(Modal)与用户界面(View)分离开,通过控制器(Controller)管理逻辑和用户输入。这种模式的缺点是:在你项目越来越大的时候,逻辑越来越复杂,数据流动的方式就很混乱。 在此基础上,又衍生出来了MVVM,由VM(ViewModal)q取代了C(Controller...转载 2019-03-31 20:44:27 · 454 阅读 · 0 评论 -
React 之 setState
前言: state是React中非常重要的概念。React通过管理状态来实现对组件的管理,React通过this.state来访问state,又通过this.setState()来更新state,当this.setState()方法被调用时,React会重新调用render函数来重新渲染UI。一、setState异步更新 setState通过一个队列机制实现state更新。...原创 2019-03-17 16:20:00 · 292 阅读 · 0 评论 -
React 之 Virtual DOM
一、 Virtual DOM 实际上是在浏览器端用Javascript实现的一套DOM API ,它之于React一个虚拟空间,包括一整套Virtual DOM、生命周期的维护与管理,性能高效的diff算法和将Virtual DOM展示为原生的DOM的Patch方法等。当开发者使用React时,此时的<div>标签并不是原生的<div>标签,它其实是Reacts生...原创 2019-03-17 15:21:26 · 307 阅读 · 0 评论 -
React的受控组件与非受控组件
受控组件<input type="text" value={this.state.value} onChange={(e) => { this.setState({ value: e.target.value.toUpperCase(), }); }}/><input>...原创 2019-03-04 21:28:21 · 184 阅读 · 0 评论 -
React——样式处理
一、 样式处理是React非常重要的一个环节。需要用到CSS Modues的概念及用法。我们会用到两种方式: 1、使用className prop来设置类名; 2、使用style设置内联样式; 内联样式的 style是以一个 json对象的形式设置的。 样式中的像素值:const style ...原创 2019-03-06 22:48:56 · 833 阅读 · 0 评论 -
JS获取JSON对象键值对中key值的方法
一、使用 Object.keys(obj)方法获取 JSON对象的key值。 Object.keys( ) 会返回一个数组,数组中是这个对象的key值列表。Polyfill要在原生不支持的旧环境中添加兼容的Object.keys,请复制以下代码段:if (!Object.keys) { Object.keys = (function () { var ha...转载 2019-03-06 17:18:19 · 23798 阅读 · 0 评论 -
React 的事件系统
一、 React基于Virtual DOM 实现了一个SyntheticEvent(合成事件)层,完全符合W3C标准,不会存在IE标准的兼容性问题。 同样支持冒泡机制,所有的事件都自动绑定到最外层上,如果需要访问原生事件对象,可以使用nativeEvent属性。在原生事件可以使用阻止冒泡行为可以阻止合成事件的冒泡,而合成事件使用阻止冒泡行为不能阻止原生事件的冒泡行为。注意: 在...原创 2019-03-03 17:44:58 · 197 阅读 · 0 评论 -
ES7前端异步:async/await浅解
在最新的ES7(ES2017)中提出的前端异步特性:async、await。什么是async、await?async顾名思义是“异步”的意思,async用于声明一个函数是异步的。而await从字面意思上是“等待”的意思,就是用于等待异步完成。并且await只能在async函数中使用通常async、await都是跟随Promise一起使用的。为什么这么说呢?因为async返回的都是一个P...原创 2019-02-25 10:45:59 · 539 阅读 · 0 评论 -
JS 解析url参数为json对象
一、将url中的参数解析为json对象: 使用正则表达式: function getQueryObject(url) { url = url == null ? window.location.href : url; var search = url.substring(url.lastIndexOf("?") + 1);...原创 2018-09-20 17:28:50 · 5364 阅读 · 0 评论 -
uploadify插件实现文件上传
最近在做文件上传功能中,使用到了uploadify插件,简单记录一下。 · 依赖 jquery.min.js · 注意 谷歌浏览器需开启flash(此坑已踩实)。<!DOCTYPE html><html><head><meta charset="UTF-8"><title>world</title>&原创 2018-04-11 16:58:53 · 230 阅读 · 0 评论 -
JS 实现 字符串replaceAll(oldStr,newStr);
string.replace(new RegExp(key,'g'),b);这里,利用 JS 的 RegExp 对象,将 g 参数单拿了出来,同时,正则的内容可以用变量来代替了!!!!key: 你要替换的值;b : 你的目标值。返回的是 替换后的字符串。...原创 2018-04-14 15:45:47 · 337 阅读 · 0 评论 -
Three.js 插件实现360全景
前言: 有些小伙伴在开发过程中可能会遇到全景展示的需求,我们借助于Three.js的photo-sphere-viewer.js库即可实现无插件的方式实现全景图片的展示。只需要浏览器支持WebGL和canvas就可以。三步实现全景:一、引入js库: <script src="./libs/three.min.js"></script>&l...原创 2019-08-02 11:10:33 · 2050 阅读 · 0 评论