自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

mossbaoo的博客

不积跬步无以至千里,不积小流无以成江海。

原创 Mac前端基础开发环境

Mac前端基础开发环境Node下载地址:https://nodejs.org/en/download/选择 macOS Installer 下载即可HomebrewHomebrew是MacOS平台下的软件包管理工具。官网地址:https://brew.sh/在终端下安装homebrew:/usr/bin/ruby -e "$(curl -fsS...

2019-08-08 15:35:32 81

原创 git 将代码提交到另一个新仓库

换一种说法就是,从一个git仓库拷贝到另一个git仓库。做法:以镜像推送的方式上传代码到新的仓库地址git push --mirror http://...(目标仓库地址)

2019-07-12 09:54:07 3051

原创 js 冒泡排序和快速排序

冒泡排序通过相邻两个元素之间的比较和交换,使较大的元素逐渐从前面移向后面(即升序),就像水底下的气泡一样逐渐向上冒泡,所以被称为“冒泡”排序。var arr = [3, 4, 5, 1, 7, 2, 8, 9, 6, 0];function arrayRank(arr) { var num = null; for (var i = 0; i < arr.length...

2019-07-10 16:51:18 453

原创 vue 数据双向绑定的原理

首先简述一下什么是数据双向绑定:数据双向绑定,即当数据发生变化的时候,视图也就发生变化,当视图发生变化的时候,数据也会跟着同步变化。vue实现双向数据绑定的原理,其实就是利用了 Object.defineProperty() 这个方法重新定义了对象获取属性值get和设置属性值set的操作来实现的。代码演示defineProperty的用法:// 第一个参数:定义属性的对象var obj =...

2019-07-10 15:55:49 203

原创 es6 字符串模板拼接

字符串拼接是在日常开发中必不可少的一个环节。注意:字符串可以用单引号'',或者""双引号,出于方便大家理解,文章以下内容统一使用单引号''!如果只是一个字符串和一个变量拼接,使用传统的字符串拼接就没什么问题,只需要一个+号和一个''号就好了;但是有时候会有多个字符串与变量拼接,那么就会有一大堆的+号和''号,造成代码不美观。传统的字符串拼接var name = 'moss';var ...

2019-07-01 15:03:58 1038

原创 js 实现颜色值格式转换 rgb和十六进制的转换

本文章是以prototype原型的方式,给string字符串类型添加方法,用于实现颜色值格式的转换。如果你不用原型方法,那么你只要借鉴实现方法就好了。RGB转换为16进制String.prototype.colorHex = function () { // RGB颜色值的正则 var reg = /^(rgb|RGB)/; var color = this;...

2019-06-24 14:22:42 6740

原创 在vue项目中使用ECharts

这个示例使用vue-cli 脚手架搭建安装echarts依赖npm install echarts --save创建图表可选择全局引入 或者 按需引入全局引入会将所有的echarts图表打包进去,会导致体积过大,个人建议使用按需引入。全局引入main.js// 引入echartsimport echarts from 'echarts'...

2019-06-12 11:43:35 149

原创 js 判断手机操作系统(ios或Android)

使用javascript判断手机操作系统(ios或Android),介绍小米的miui浏览器如何切换浏览器标识,并解决“在小米浏览器中判断手机操作系统的结果是ios/iPhone”的问题。

2019-05-27 15:16:45 3562

原创 jQuery 判断鼠标从哪个方向进入元素

$(".item").bind("mouseenter mouseleave", function(e) { var w = $(this).width(); var h = $(this).height(); var x = (e.pageX - this.offsetLeft - (w / 2)) * (w > h ? (h / w) : 1); var y = (e.page...

2019-05-20 11:11:02 202

原创 vue子组件与父组件之间的传值

【vue子组件与父组件之间的传值】在子组件与父组件之间的通信中,无论是子组件向父组件传值还是父组件向子组件传值,他们都有一个共同点就是有中间介质,子向父的介质是自定义事件,父向子的介质是props中的属性。抓准这两点对于父子通信就好理解了。

2019-04-28 11:55:05 1013

原创 vue加scoped后就无法修改vant的UI组件的样式

有时候UI组件提供的默认的样式不能满足项目的需要,就需要我们对它的样式进行修改,但是发现加了scoped后修改的样式不起作用。解决方法:使用深度选择器,将scoped样式中的选择器“深入”,即影响子组件<style scoped> .a >>> .b { /* ... */ }</style>以上的代码会编译成:.a[data-v-f3f...

2019-04-25 16:59:18 5770 7

原创 vue移动端项目如何真机测试

在做vue移动端项目的时候,我们都会想着在手机上真机测试一下自己做出来的效果,那么如何实现呢?1. 查看IP地址: WIN+R,输入cmd回车,打开命令提示符,输入ipconfig, 查看IP地址2. 在项目中找到 '/config/index.js' 文件中的host 字段,默认值是'localhost',修改成自己的IP地址'192.168.x.x'3. 运行项...

2019-04-25 10:03:11 1369 1

原创 微信公众号开发 - 引导用户关注、一键关注

微信公众号开发如何引导用户关注?如何一键关注?5个步骤:1. 打开公众号,点击右上角人像图标;2. 点击查看“全部消息”;3. 点击右上角三个点的图标,然后“复制链接”;4. 获得链接;5. 将该链接放进你想要做跳转的地方即可。

2019-04-19 10:29:23 1903

原创 vue图片懒加载插件vue-lazyload

前言:当页面的图片数量过多,或者用户当前网络不佳的情况下,我们需要将页面内未出现在可视区域内的图片先不做加载, 等到滚动到可视区域后再去加载。这样子对于页面加载性能上会有很大的提升,也提高了用户体验。实现方法:使用vue的图片懒加载插件vue-lazyload

2019-04-15 16:25:31 145

原创 微信小程序 使用特殊字体的两种方法

微信小程序中如何使用特殊字体?我有两种方法:1.转base64格式;2.【推荐使用】动态加载网络字体

2019-04-09 14:55:55 7236

原创 【今日一笑】实习程序员的逆袭

记得初入公司时,写的代码乱七八糟,错误百出,bug连连,不仅上级领导骂我,其他同事也对我怨声载道。后来听朋友介绍,就报了一个培训班。经过1个月的刻苦学习,终于功夫不负有心人啊...............

2019-03-29 17:49:58 162 1

原创 微信小程序 通过nodeJs操作MySQL进行数据交互

下面的操作,我是通过phpStudy和Navicat for MySQL搭建起来的开发环境我提供一个Navicat for MySQL的安装和破解方法:https://blog.csdn.net/mossbaoo/article/details/88661851先来看看目前MySQL的数据:node连接MySQL,需要安装express和mysql包var express = requi...

2019-03-19 16:01:00 4469 5

原创 vue 用纯js监听滚动条到底部 实现上拉加载

在移动端网页项目中,基本都会有列表页的上拉加载功能。在这篇文章中,我结合vue的生命周期用纯js写了一个监听滚动条的函数。怎样用纯js判断滚动条是否到底部先了解几个重点要素:获取滚动条到顶部的位置:document.documentElement.scrollTop、document.body.scrollTop获取当前窗口内容可视区:document.documentElement.c...

2019-03-14 16:34:28 3262 2

原创 微信小程序-虚拟支付的解决方案!原来还可以这么玩!

什么是虚拟支付?比如购买非实物(VIP会员、充值、课程、虚拟物品等)这次虚拟支付的整改,最受影响的应该就是那些知识付费、购买课程、在线教育之类的小程序而这次整改,只针对于ios系统的小程序,安卓系统是不受影响的,开发者可以选择其中一种方案:1. ios和安卓都使用解决方法:1. 把 芝麻小客服 接入到小程序中2.在 芝麻小客服后台 设置关键词回复3...

2019-03-11 17:13:15 12230 1

原创 js 获取当前页面url链接的参数

方法:function getUrlParam(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.slice(1).match(reg); if (r != null) return unescape(r[2]); ...

2019-03-11 17:10:12 1066

原创 vue中报错 [Vue warn]: Error in render: "TypeError: Cannot read property 'avatar' of undefined"

vue中报错 [Vue warn]: Error in render: "TypeError: Cannot read property 'avatar' of undefined",如下图:这时候你就要检查下你的项目中template模板中是否有用到了没有定义的数据。举个例子:在我的template模板中有这么一段dom<img :src="dataDetail...

2019-03-04 11:49:35 8899

原创 vue 路由传参 params与query的区别

假设是从列表页带着参数id进入详情页,有两种传参方式:params 与 query1.params列表页 list.vue:toDetail(id) { this.$router.push({ name: 'detail', params: { id: id } })},详情页 detail.vue:created() ...

2019-03-01 10:11:35 389

原创 vue 中使用 less

首先,vue开发环境已经安装成功第一步:安装less依赖npm install less less-loader --save 第二步:修改webpack.config.js文件,配置loader加载依赖,让其支持外部的less,在原来的代码上添加{ test: /\.less$/, loader: "style-loader!css-loader!less-...

2019-02-27 17:13:13 54

原创 使用vue-router设置每个页面的title

import Vue from 'vue'import Router from 'vue-router'import Home from '@/components/Home'import user from '@/pages/user/user'Vue.use(Router)const router = new Router({ routes: [ { p...

2019-02-27 16:48:33 91

原创 js 用 new Date() 获取时间在ios端出现NaN问题的解决办法

在ios端中,使用如下方法会获得NaN,安卓手机则是正常计算new Date("2019-02-26 18:34:33").getTime()解决方法:用正则把 '-' 换成 '/' ,让时间格式变成以下格式new Date("2019/02/26 18:34:33").getTime()代码:var date = '2019/02/26 18:34:33'.repla...

2019-02-26 18:38:50 1110

原创 Python 报错 SyntaxError: invalid character in identifier

Python中遇到SyntaxError: invalid character in identifier的报错,说明代码行内有夹杂中文的空格,中文的tab键缩进等,或者非文字字符。比如:# 错误,第二行是中文的tab键缩进if a >= 0: print(a)# 正确,第二行是英文的tab键缩进if a >= 0: print(a) ...

2019-02-22 16:05:04 531

原创 Python 报错 IndentationError: expected an indented block

Python中遇到IndentationError: expected an indented block的报错,说明此处需要缩进,你只要在出现错误的那一行,按空格或Tab键缩进就行。有冒号的下一行就要缩进,比如:# 错误if a >= 0:print(a)# 正确if a >= 0: print(a) ...

2019-02-22 15:57:31 203

原创 一图一表一段文字读懂微信小程序的生命周期

一图一表一段文字读懂微信小程序的生命周期(onLoad、onShow、onReady、onUnload、onHide)

2019-02-22 09:56:28 184

原创 js面试题 隐式转换、原型链

js面试题 隐式转换、原型链1. 分析代码,请问执行结果是什么?var name = "World!";(function () { var name; if (typeof name === 'undefined') { name = 'Jack'; console.log('Goodbye' + name); } else { ...

2019-02-20 18:06:07 245

原创 微信小程序 textarea组件层级过高导致文字穿透浮层的解决方法

页面中有一个fixed浮层,就算把层级设置到9999了,textarea的placeholder文字或者输入的文字内容都会直接穿透浮层,显示在浮层的上面。如下图: 解决方法:再写一个样式跟textarea一样的view。当浮层出现时,隐藏textarea,显示模拟的textarea,即以下代码的isShow: true<view class="textarea" wx:...

2019-02-13 11:35:57 2567

原创 js 时间戳转时间格式

 封装:const formatTime = (timestamp) => { var date = new Date(timestamp*1000) const year = date.getFullYear() const month = date.getMonth() + 1 const day = date.getDate() const...

2019-01-30 09:58:32 2194

原创 微信小程序 组件的样式修改

 在开发微信小程序时,我们在使用一些组件的时候,总会遇到设计稿与官方提供的组件样式不太一样的情况,需要想办法修改组件的样式。目前只记录了两个组件的修改方法:switch、checkboxswitch1. 大小/* swtich整体大小 */.wx-switch-input{ width: 100rpx !important; height: 57rpx !importa...

2019-01-18 17:13:48 3785

原创 Python 报错 'urllib' has no attribute 'urlretrieve'

python2与python3的urllib差别在于python3要加上.request比如:import urllib.requesturl = 'http://www.sina.com.cn'local = 'C:/Users/Administrator/Desktop/python/html/sina.html'urllib.request.urlretrieve(url...

2019-01-18 10:07:11 604

原创 Vue CLI 3 + Vant 项目搭建

注释:以下命令均用npm,如您使用的是yarn,可以点击以下链接进入查阅。Vue CLI 3  安装:npm install -g @vue/cli  创建项目:vue create my-project // my-project是项目名称  项目创建完成后,进入项目根目录:cd my-project  如果不需要Vant或其它UI组件库,可以直接运行...

2019-01-15 16:07:50 5377 2

原创 node版本更新遇到的巨坑

今天在安装 vue-cli 3 的时候,报错了:You are using Node v6.11.2, but this version of vue-cli requires Node >=8.9.node 版本太低了,那就更新版本好了,问题不大,一点都不慌。请求一下度娘,拿到了node更新版本的命令:第一步、安装npm的版本管理工具:nnpm install -g...

2019-01-14 17:25:43 2367 1

原创 微信小程序 canvas的文字居中显示

利用canvas的测量文本的measureTextctx.fillText(str, (canvasWidth - ctx.measureText(str).width) / 2, 0);

2019-01-10 00:10:00 3469

原创 jQuery Validate.js 自定义验证规则-手机号码

HTML:<form action="xxx" method="post" id="myform"> <input type="text" name="phone" placeholder="请输入手机号码" /> <button type="submit">提交&

2019-01-07 17:41:48 1461

原创 用nodeJs的anywhere搭建本地服务器环境

anywhere 可以随时随地将你的当前目录变成一个静态文件服务器的根目录。 安装npm install anywhere -g 在想要本地服务器的根目录执行anywhere执行命令后,默认浏览器将为您自动打开主页。默认端口号为8000,如果该端口被占用,会有“Error: listen EADDRINUSE :::8000”报错,可以换一个端口号执...

2019-01-07 17:31:41 420

原创 微信小程序 canvas绘图 实现图片拉伸、压缩与裁剪

在canvas绘图时,通常会遇到的一种情况是用固定宽高来显示图片,如果直接把图片内容填充进去的话,显示出来的图片就会被压扁或者被挤瘦,其效果简直不忍直视!那么,就需要把图片进行拉伸、压缩或裁剪。接下来,先给 drawImage 做个介绍:canvas的drawImage函数可以 绘制图像到画布。它有以下参数:参数 类型 说明 imageResource ...

2018-12-22 15:25:29 4323

原创 Ajax异步请求传对象到后台

JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串var obj = { name: 'mossbaoo', age: '22'}$.ajax({    type : "post",    dataType : "json",    url: "http://xxx/xxx",    data : { user:...

2018-12-21 10:22:58 672

提示
确定要删除当前文章?
取消 删除