![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
javascript
XiaoHuangDiLHD
这个作者很懒,什么都没留下…
展开
-
jsonp源码解析
源码github地址https://github.com/webmodules/jsonp/blob/master/index.jsvar debug = require('debug')('jsonp');//node.js的debug模块,可以在控制台打印错误消息一般我们在测试的时候都是直接console.log()来打印消息的,但是在线上生产环境用console.log的话,每次...原创 2018-09-25 19:36:54 · 528 阅读 · 0 评论 -
vue设置固定title而造成无法点击问题
设置title的css时,没有给一个高度,导致它出现的时候,把列表给覆盖住了,所以无法点击下面的列表,设置了一个高度之后,问题解决。原创 2018-09-29 08:11:54 · 407 阅读 · 0 评论 -
javascript——ajax
创建一个请求需要三个步骤:1.创建一个XMLHttpRequest对象的引用2.调用open()方法3.调用send()方法function createAjax(){ if(window.ActionXObject){ //对IE6,7,8兼容 return new ActiveXObject("Microsoft.XMLHTTP") } else...原创 2018-10-08 19:14:51 · 181 阅读 · 0 评论 -
es6中的对象解构赋值
const {foo:baz} = {foo:'aaa',bar:'bbb'}此时,baz就等于aaa。由此可以看出,对象解构赋值,是先在赋值对象中找到同名属性,然后将属性的值赋值。注意这里baz才是变量,foo只是匹配模式,只是用来进行寻找同名属性用的。可以根据上面的 方法扩展一下。const {foo} = item这个赋值表达式的意思是,ite是一个对象,将item对...原创 2018-09-29 20:38:45 · 374 阅读 · 0 评论 -
react-thunk的使用流程
react-thunk作用:使我们可以在action中返回函数,而不是只能返回一个对象。然后我们可以在函数中做很多事情,比如发送异步的ajax请求。export const getList = () => { return (dispatch) => { axios.get('/api/headerList.json').then( (res) =...原创 2018-12-07 14:26:50 · 996 阅读 · 0 评论 -
jsonp的使用——qq音乐为例
上一篇中对jsonp的源码进行了分析,所以这篇文章是对jsonp的使用,加深对jsonp的理解。首次使用,如有错误,请告知。互相学习,互相借鉴。因为我最近在看慕课网上的用vue实现音乐app的教程,所以这里我也会使用vue来实现。安装jsonp$ npm install jsonp引入jsonpimport originJSONP from 'jsonp'定义一个实现j...原创 2018-09-25 20:33:30 · 529 阅读 · 0 评论 -
vue中使用v-for循环加载swiper-slide时loop没有生效
vue中使用v-for循环加载swiper-slide时loop没有生效,数据是异步获取的。<div> <swiper :options="swiperOption" ref="swiperOption" class="swiper" v-if="recommend.length>0"> <swiper-slide v-原创 2018-09-26 14:10:58 · 4106 阅读 · 0 评论 -
better-scroll无法滚动问题
无法滚动的时候打印一下scroll对象,看看里面的wrapperHeight是否小于scrollerHeight,如果不小于是不能滚动的,因为hasVerticalScroll表示是否有垂直滚动,如果不小于,那么hasVerticalScroll就是false,所以无法滚动。class为recommend的元素是scroll元素的父元素,它要固定高度为wrapperHeight的高度,如果没...原创 2018-09-26 19:20:42 · 1096 阅读 · 0 评论 -
vue-lazyload实现图片懒加载
这个插件使用非常简单安装npm install vue-lazyload --save在main.js文件中引入,注册import VueLazyLoad from 'vue-lazyload'Vue.use(VueLazyLoad, { loading: imgurl //加载时要显示的图片链接})在组件的img中使用<img v-lazy="i...原创 2018-09-26 20:15:33 · 139 阅读 · 0 评论 -
javascript基础——函数表达式
函数声明与函数表达式的区别:函数声明提升:就是使用函数声明时,函数会被解析器先读取,以供执行环境使用,所以函数声明的位置可以在函数调用的后面函数表达式则不可以在函数调用的前面,必须先定义函数表达式,才可以调用,不然浏览器会报错。函数表达式:var sayHi = function(name){ console.log(name+",hi");}sayHi("joh...原创 2018-10-12 09:52:06 · 203 阅读 · 0 评论 -
javascript中的原型对象
function Person() {}Person.prototype.name = 'kobe'Person.prototype.age = '23'Person.prototype.job = 'player'Person.prototype.sayName = function() { console.log(this.name)}var person1 = new...原创 2018-10-05 15:21:58 · 152 阅读 · 0 评论 -
vue利用better-scroll实现通讯录式列表滚动和左右联动效果(1)
1.点击右侧字母,滚动到相应的列表位置首先在右侧字母列表监听touchstart事件,当事件发生时则执行相应的函数函数内容onShortCutTouchStart (e) { let anchorIndex = getData(e.target, 'index') this.touch.anchorIndex = anchorIndex this....原创 2018-09-28 13:55:51 · 2210 阅读 · 0 评论 -
vue利用better-scroll实现通讯录式列表滚动和左右联动效果(2)
3.右边字母列表滑动或者点击时对应的字母高亮 _calculateHeight () { this.listHeight = [] const list = this.$refs.listgroup let height = 0 this.listHeight.push(height) for (let i = 0; i < ...原创 2018-09-28 19:03:25 · 1270 阅读 · 0 评论 -
html5——离线缓存
实现离线缓存非常简单,只需要在html标签上添加manifest属性就可以了<html manifest="cache.manifest">....</html>然后在创建一个cache.manifest文件文件中的内容是CACHE MANIFEST#v0.11CACHE:js/app.jscss/style.cssNETWORK:r...原创 2018-10-06 21:34:31 · 937 阅读 · 0 评论 -
immutable的使用
immutable是用来避免开发者直接修改state的库。我们首先要将state对象变为immutable对象。使用fromJS方法。import { fromJS } from 'immutable'//使用immutable对象,是state数据不可变,是防止我们直接修改state数据的一个库const defaultState = fromJS({ fouced:fal...原创 2018-12-07 14:34:12 · 530 阅读 · 0 评论