自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(320)
  • 资源 (1)
  • 收藏
  • 关注

转载 发布订阅模式与观察者模式

背景设计模式并非是软件开发的专业术语,实际上,“模式”最早诞生于建筑学。设计模式的定义是:在面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案。通俗一点说,设计模式是在某种场合下对某个问题的一种解决方案。如果再通俗一点说,设计模式就是给面向对象软件开发中的一些好的设计取个名字。这些“好的设计”并不是谁发明的,而是早已存在于软件开发中。一个稍有经验的程序员也许在不知不觉中数次使用过这些设...

2019-04-15 12:56:49 340 1

转载 Vue.js 的注意事项与技巧

原文链接:Vue.js — Considerations and TricksVue.js 是一个很棒的框架。然而,当你开始构建一个大型 JavaScript 项目的时候,你将对 Vue.js 感到一些困惑。这些困惑并不是来自框架本身,相反 Vue.js 团队会经常调整一些重要设计策略。相对于 React 和 Angular,Vue.js 面向一些不同水平的开发者。它更加的友好,不管是对初学者...

2019-04-15 12:53:04 232

转载 你见过的最全面的python重点

首先和大家说个对不起,由于总结了太多的东西,所以篇幅有点长,这也是我"缝缝补补"总结了好久的东西,对于Nginx的东西我没总结在这里,大家可以Python聚焦看,点击直达专栏哦。Python 编程速成前端span设置margin上下无效果,因为span是行内元素,是没有宽高的。Py2 VS Py3print成为了函数,python2是关键字不再有unicode对象,默认str就是uni...

2019-04-15 12:50:24 245

转载 使用javascript实现小型区块链

区块链概念 狭义:区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码方式保证的不可篡改和不可伪造的分布式账本。区块链技术全解析入门版一、挖矿(产生新区块)首先,区块链是由每一个区块联系而形成的,在产生新区块之前必须先有一个最初始的区块,这个区块也叫创世区块。通过这个创世区块,不停地通过变化随机数(nonce)来计算出符合条件的区块。以下是创世区块基本信息:...

2019-04-15 12:43:12 230

转载 正确配置 Visual Studio Code 开发和调试 TypeScript

一、环境Node.js v10.15.3npm 6.9.0Visual Studio Code 1.33.0 (user setup)2019/4/6Visual Studio Code 快捷键大全(Windows)Koa2-Node.js QQ群:481973071二、开发 TypeScript1、建立项目目录使用以下命令创建项目的目录:mkdir ts3cd ts...

2019-04-15 12:40:27 3307

转载 服务端预渲染之Nuxt(介绍篇)

现在前端开发一般都是前后端分离,mvvm和mvc的开发框架,如Angular、React和Vue等,虽然写框架能够使我们快速的完成开发,但是由于前后台分离,给项目SEO带来很大的不便,搜索引擎在检索的时候是在网页中爬取数据,由于单页面应用读取到的页面是几乎空白的,无法爬取到任何数据信息。Nuxt.js 基础入门教程<!DOCTYPE html>&lt...

2019-04-15 12:35:04 840

转载 vue-element Tree树形控件填坑路

通过tree树形控件的default-checked-keys属性来设置默认选中的节点html.vue<el-form-item label="角色权限:"> <el-tree :data="data2" show-checkbox node-key="id" @check="hand...

2019-04-03 14:58:39 1020

转载 如何将iview封装成自己的组件库

因为项目UI风格改版,iview提供的的定制主题满足不了需求,有些组件需要更改结构,所以需要对iview进行二次开发,封装成公司内部的组件库。步骤从github clone iview源代码,看一下它的各种配置文件尤其是package.json和.babelrc,与本地项目作比较,适当合并一下,之后删除不必要的文件,只留下 src 这个文件夹。修改本地项目的iview引入方式,只需要修改...

2019-04-03 14:57:01 1999

转载 【前端进阶基础】VUE响应式数据原理 订阅-发布模式解析

vue框架的两个抽象核心:虚拟DOM和相应式数据原理关于虚拟DOM的核心算法,我们上一章已经基本解析过了,详细的见React && VUE Virtual Dom的Diff算法统一之路 snabbdom.js解读关于响应式数据原理,我们先看张图你 ‘ (4).png具体来讲,要分以下几步:初始化实例对象时运行initState, 建立好props, data 的钩子以及...

2019-04-03 14:55:57 386

转载 Element中的Cascader(级联列表)动态加载省/市/区数据

element中的cascader其实是有动态加载次级选项的方法。方法的原理是利用址(引用)传递,动态修改:options。var c={name: 'bob'}var d=cd.name = 'tom'console.log(c)// {name: "tom"}http://element-cn.eleme.io/#/...其中找到究竟需要在那层添加数据就变成一个很麻烦的问...

2019-04-03 14:54:29 5989

转载 vue培训记录

在公司做了一次vue相关的培训,自己整理了一些大纲。供大家参考学习!当然 优先要先看官方文档1. 项目构成及原理 Vue主流框架见解及差别react ALL IN JS 灵活angular 架构清晰 层级多 重vue 类似react并吸收了angular的一些优点Node运行在服务端的JS谷歌V8引擎 使JS语言能在服务器端运行Webpack—一个前端的打包工具...

2019-04-03 14:53:01 206

转载 【mone-query】基于 element-ui 的通用查询组件

mone-queryGithub: https://github.com/jczzq/mone...Demo: https://blog.jczzq.com/mone-q...mone-query是基于element-ui封装的通用查询组件,它通过丰富的配置让你尽可能少的前端编码就可以完成大部分报表需求。必要依赖vue >= 2.5.2 element-ui >= 2.4.0...

2019-04-03 14:51:57 1019

转载 MVC、MVP 和 MVVM 对比笔记

MVC、MVP 和 MVVM三个非常重要的架构模式MVC (Model(模型)-View(视图)-Controller(控制器))MVP (Model(模型)-View(视图)-Presenter(中介者))MVVM (Model(模型)-View(视图)-ViewModel(视图模型))MVC 模式MVC 是一个架构设计模式,它通过分离关注点的方式来支持改进应用组织方式。它促成了...

2019-04-03 14:50:03 158

转载 vue + iview/elementUi --城市多选

城市多选组件最近收到了一个需求,管理系统需要上线一个活动,但是活动是根据地区上线的,最小范围到市,于是有了下面这个组件页面展示如图:上代码~~~<template> <div class="tm-mil-city"> <p class="tm-mil-city-title tm-mil-...

2019-04-03 14:48:13 962

转载 vue实现 toggle显示隐藏效果

背景介绍jQuery中有个toggle()方法,可以切换元素的显示状态,在用vue时如果不引入jQuery如何实现这种效果?使用场景常见有三种场景:1.控制页面中一个dom元素2.控制页面中多个dom元素3.控制页面中的dom元素是从服务端返回,且有多个技术分析1.一二场景下实现这种效果可以用v-if指令,通过设置true或false来控制dom的隐藏与显示。如果控制一个dom或多个dom我们可以...

2019-04-03 14:44:58 693

转载 Vue路由传参的三种基本方式

Vue路由传参的三种基本方式现有如下场景,点击一个button按钮跳转到另外一个路由页面,并向目标路由页面传递参数,便于目标路由页面获取源页面传递的数据信息。源页面中:<button @click="gotoTargetView">点击跳转到目标路由user页面</button>方案一,通过调用$router对象的push()方法,...

2019-04-03 14:43:47 364

转载 用service命令管理mysql启停

安装完成mysql之后,每次启动和停止都很麻烦,有时候记不住去网上搜一下,看见大家都用service来进行服务的管理,试了一下,果然好用。推荐大家也要这么用,如果你的服务器版本高于centos7,可以使用systemd命令(取代service命令)来管理。启动和停止mysql服务# 启动/usr/local/mysql/bin/mysqld --basedir=/usr/local/m...

2019-03-27 19:45:44 314

转载 2019,帮助你更好的开发小程序

前言原生开发小程序有了两个项目,在原生开发小程序经验技巧方面有一些自己的总结,此篇文章做原创分享!本文适合老手查看,新手请参阅官方文档,同步至github。1.发布订阅处理复杂逻辑支持先订阅后发布,以及先发布后订阅方法源码var Event = (function() { var clientList = {}, pub, sub, remove;...

2019-03-27 19:45:12 240

转载 Node.js 配合 express 框架、ejs 、mongodb 实现应用 && [使用 TypeScript 重构]

一、Node.js默认使用commonJs的模块化方案,TypeScript默认是ES6的模块化方案,两者有本质区别。1.Node.js的去寻找引入的依赖时,如果是Node自带的模块,比如fs文件模块,只需要填写fs即可。如果是自己定义的模块,那么需要加入./(使用相对路径),暴露接口使用exports或者module.exports2.TypeScript的 import * from ...

2019-03-27 19:44:13 237

转载 从生成器到async/await

回顾所谓的异步,就是程序的一部分现在进行,而另一部分则在将来运行。异步处理的重点就是如何处理将来运行的那一部分。回调是 JavaScript 中最基本的异步模式,就是事先约定好将来要做的事然后回头调用。简单直接,但也存在不信任、调用嵌套过深等问题。对于编写代码、维护代码的我们而言,人类的大脑还是习惯于线性的处理方式。基于回调的异步模式所存在的问题促使着我们寻求一种机制来保证回调的可信任,同时...

2019-03-27 19:42:39 303

转载 耗时一周整理的前端面试题,干货为主

websocketWebsocket同http一样都是是基于tcp的,可靠性的双向通信协议,是建立在tcp之上的,并且是持久化的协议。websocket 和http区别?相同点都是应用层的协议都是基于tcp,可靠的协议不同点websocket是持久化的协议.websocket是双向通信协议,模拟socket协议,可以双向发送信息,而HTTP是单向的websocket...

2019-03-27 19:40:13 946 1

转载 如何实现沉浸式视频体验?

沉浸式视频体验上周产品小哥哥丢过来一个需求,名曰:沉浸式视频体验,大致内容是一个页面里有几十个视频,用户点击其中一个视频时,该视频自动滑动到屏幕可视区域的顶部开始播放,并暂停其他视频,该视频滑出屏幕可视区域之后要自动暂停。这个需求有两个关键的技术点:如何将视频滑动到屏幕可视区域的顶部如何判断视频滑出了屏幕可视区域其实这两个技术点有一个共同点,就是需求计算出元素在页面中的绝对位置,也就...

2019-03-27 19:38:38 3742

转载 Web组件简介

Web组件是什么?Web组件由三个独立的技术组成:自定义元素。很简单,这些是完全有效的HTML元素,包含使用一组JavaScript API制作的自定义模板,行为和标记名称(例如,<one-dialog>)。自定义元素在HTML Living Standard规范中定义。Shadow DOM。能够隔离CSS和JavaScript,例如一个<iframe>。这在Liv...

2019-03-27 19:37:13 1628

转载 iview组件事件额外传递参数

&lt;template&gt; &lt;Table border :columns="columns6" :data="data5" @on-row-click="(row, index) =&gt; { youFunc(row, index , 'params')}"&gt;&lt;/Table&gt;&lt;/t...

2019-03-27 19:36:20 2122

转载 h5唤醒APP小记

h5唤醒APP功能最近遇到一个需求,需要在从APP分享出去的H5页面中,带有一个立即打开的按钮,如果本地安装了app,那么就直接唤起本地的app,如果没有安装,则跳转到下载。这是一个很正常的推广和导流量的策略。前端小白从来没有做过这个需求,只能开始哼唧哼唧地开启自己的度娘和谷歌之旅。经过一段时间的探索之旅发现里面的学问很多,要做一个兼容性很好的方案,就需要考虑各种情况,在不同的情况适配不同的方...

2019-03-27 19:28:57 373

转载 九个有用的 Laravel Eloquent 的特性

对于使用 Laravel 的开发者来说,可能都会惊叹于 Eloquent Model 的强大,但是在强大的表面之下,其实还是有很多鲜为人知的特性的,本文即来分享十个 Laravel Eloquent 的强大特性。1.更强大的 find() 方法很多开发者在使用 find() 方法的时候,通常就只是在这里传入一个 ID 的参数,其实我们也是可以传入第二个参数的:在 find() 方法中指定需要查找...

2019-03-27 19:28:14 148

转载 用service命令管理mysql启停

安装完成mysql之后,每次启动和停止都很麻烦,有时候记不住去网上搜一下,看见大家都用service来进行服务的管理,试了一下,果然好用。推荐大家也要这么用,如果你的服务器版本高于centos7,可以使用systemd命令(取代service命令)来管理。启动和停止mysql服务# 启动/usr/local/mysql/bin/mysqld --basedir=/usr/local/m...

2019-03-26 10:47:39 1238

转载 Node.js 配合 express 框架、ejs 、mongodb 实现应用 && [使用 TypeScript 重构]

一、Node.js默认使用commonJs的模块化方案,TypeScript默认是ES6的模块化方案,两者有本质区别。深入 CommonJs 与 ES6 Module1.Node.js的去寻找引入的依赖时,如果是Node自带的模块,比如fs文件模块,只需要填写fs即可。如果是自己定义的模块,那么需要加入./(使用相对路径),暴露接口使用exports或者module.exports2.T...

2019-03-26 10:39:15 196

转载 耗时一周整理的前端面试题,干货为主

websocketWebsocket同http一样都是是基于tcp的,可靠性的双向通信协议,是建立在tcp之上的,并且是持久化的协议。前端面试知识点目录整理websocket 和http区别?相同点都是应用层的协议都是基于tcp,可靠的协议不同点websocket是持久化的协议.websocket是双向通信协议,模拟socket协议,可以双向发送信息,而HTTP是单...

2019-03-26 10:36:03 246

转载 根据调试工具看Vue源码之watch

官方定义类型:{ [key: string]: string | Function | Object | Array }详细:一个对象,键是需要观察的表达式,值是对应回调函数。值也可以是方法名,或者包含选项的对象。Vue 实例将会在实例化时调用 $watch(),遍历 watch 对象的每一个属性。初次探索我们的意图是 —— 监测app这个变量,并在函数中打下一个断点。 我们...

2019-03-26 10:33:33 257

转载 js中比较运算符隐式类型转换

前言相信大家在代码中经常看见 '==' 和 '===',但大家真的弄懂了比较运算符和其中的隐式转换嘛? 今天就重新认识下比较运算符。JavaScript 类型转换全等运算符 ===说明: 严格匹配,不会类型转换,必须要数据类型和值完全一致先判断类型,如果类型不是同一类型的话直接为false;1 对于基本数据类型(值类型): Number,String,Boolean,Null和Un...

2019-03-26 10:29:44 1210

转载 Mac 下 MySQL 环境搭建

Mac 下安装 MySQL 还是很方便的, 总结来看有2个方法。第一个方法Mac下brew方式安装mysql方法一:用dmg镜像安装1、安装官网下载好 MySQL Mac 版安装包,常规步骤安装,安装过程中会出现如下提示:2019-03-24T18:27:31.043133Z 1 [Note] A temporary password is generated for root@lo...

2019-03-26 10:18:37 278

转载 Vue 服务端渲染实践 ——Web应用首屏耗时最优化方案

随着各大前端框架的诞生和演变,SPA开始流行,单页面应用的优势在于可以不重新加载整个页面的情况下,通过ajax和服务器通信,实现整个Web应用拒不更新,带来了极致的用户体验。然而,对于需要SEO、追求极致的首屏性能的应用,前端渲染的SPA是糟糕的。好在Vue 2.0后是支持服务端渲染的,零零散散花费了两三周事件,通过改造现有项目,基本完成了在现有项目中实践了Vue服务端渲染。关于ssr服务端渲染...

2019-03-25 22:05:08 3855

转载 React 和 Redux 的动态导入

代码分离与动态导入对于大型 Web应用程序,代码组织非常重要。 它有助于创建高性能且易于理解的代码。 最简单的策略之一就是代码分离。 使用像 Webpack 这样的工具,可以将代码拆分成更小的部分,它们分为两个不同的策略,静态和动态。通过静态代码分离,首先将应用程序的每个不同部分作为给定的入口点。 这允许 Webpack 在构建时将每个入口点拆分为单独的包。 如果我们知道我们的应用程序的哪些部...

2019-03-25 21:59:01 451

转载 laravel 对接支付宝

使用的库omnipay-alipay申请支付宝支付这个就不说了, 不明白如何下手的伙伴让运营去和支付宝客服联系吧composer 安装git库将以下代码添加到 composer.json { "require": { "lokielse/omnipay-alipay": "dev-master" }}执行composer命令更新依赖$ curl -s http://get...

2019-02-21 19:23:03 445

转载 PHP微信公众号后台开发(Yii2实现)

本文内容较多,包括微信接入、获取微信用户信息、微信支付、JSSDK配置参数获取等部分。如果读者对微信开发没有一个主观上的认识,那么建议读者先研读微信公众平台开发者文档,然后再阅读本文,效果更佳!另外本文的分章节版本可以在八宝粥的博客找到。20160712-Update:微信开发的完整例子已经整理在Github,欢迎查看: yii2-wechat-demo。接入微信Yii2后台配置1.在...

2019-02-21 19:21:15 275

转载 基于Swoole和Redis实现的并发队列处理系统

背景由于PHP不支持多线程,但是作为一个完善的系统,有很多操作都是需要异步完成的。为了完成这些异步操作,我们做了一个基于Redis队列任务系统。大家知道,一个消息队列处理系统主要分为两大部分:消费者和生产者。在我们的系统中,主系统作为生产者,任务系统作为消费者。具体的工作流程如下:1、主系统将需要需要处理的任务名称+任务参数push到队列中。2、任务系统实时的对任务队列进行pop,po...

2019-02-21 19:19:32 683

转载 怎么解决深入学习PHP的瓶颈

PHP给学习者的感觉是:初学的时候很容易,但是学了2-3年,就深刻感觉遇到了瓶颈,很难深入,放弃又可惜。所谓“鸡肋,食之无味弃之可惜”的感觉很是贴切。经常会有这种感觉:不学,看似也不后退;学了,好像也没什么进步;if...else,循环这些你也都知道,甚至还能记住一些别人不大会的函数,但是一到项目来了,就头大。纵然口中千语万言,但其实心中实无一策。遇到什么问题都一片迷茫,提心吊胆,无从下手.......

2019-02-21 19:18:10 106

转载 依赖注入(DI)在PHP中的实现

什么是依赖注入?IOC:英文全称:Inversion of Control,中文名称:控制反转,它还有个名字叫依赖注入(Dependency Injection,简称DI)。当一个类的实例需要另一个类的实例协助时,在传统的程序设计过程中,通常由调用者来创建被调用者的实例。而采用依赖注入的方式,创建被调用者的工作不再由调用者来完成,因此叫控制反转,创建被调用者的实例的工作由IOC容器来完成,然后...

2019-02-21 19:16:45 415

转载 用PHP编写一个APP的API

第一部分,通信接口的实现标签(空格分隔): PHP 手机后台 api 通信接口 AndyPHP是世界上最强大的语言。PHP开发手机API时,一般返回XML或JSON数据类型的数据,除了要返回从源数据(程序本身需要的数据)外还应附上状态码,以下是一段封装后的数据,它使用JSON格式展现:{ code: 200, message: "Success", data...

2019-02-21 19:15:51 555

Javascript代码集

Javascript代码集Javascript代码集Javascript代码集Javascript代码集

2017-11-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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