自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 vue2、vue3、react响应式原理、组件声明周期阐述与对比

vue2/vue3/react 响应式原理、组件声明周期

2023-05-17 22:05:24 2298

原创 Docker 常用命令分类归纳

docker 常用指令

2023-05-17 21:34:24 156

原创 【CICD】Jenkins 部署 Docker 容器形态的后端服务

Dockerfile 文件准备Git 代码推送或者 Jenkins 上点击【构建】Jenkins 推送代码至服务器Docker 镜像生成Docker 容器启动。

2023-02-15 10:31:30 563

原创 【CICD】Jenkins 构建部署前端项目

Git 推送代码,触发webhook;Jenkins 服务被触发,执行构建;Jenkins 通过 SSH 推送代码至服务器.

2023-02-13 14:32:09 1390

原创 优雅之ES6(一)

1.解构赋值—“从天而降”的取值方法/** 常用的取值方法 **/const obj = { a: 1, b: 2, c: 3}const a = obj.aconst b = obj.bconst c = obj.c/** 解构赋值 **/const obj1 = { a1: 1, b1: 2, c1: 3}const { a1, b1, c1 } = obj12.Set对象 / …(扩展运算符)—“优雅”的合并数组/** 常用合并数组方法 **/const a

2022-03-26 01:06:03 204

原创 Node微服务之Seneca的使用

Seneca在Node微服务中的运用1.seneca基本用法介绍准备工作:npm i -S senecanpm i -S seneca-basic#匹配模式/** demo.js **/const seneca = require('seneca')()// 将下列函数cal作为插件使用seneca.use(cal).act({ cmd: 'add' }, (err,data) => { // 匹配成功返回后执行 console.log(data) // { data: '

2022-03-26 00:40:43 605

原创 微信小程序之日期时间筛选器实现(支持年月日时分)

开发微信小程序过程中,有个需求需要用到日期时间筛选器,查看微信官方文档后,发现官方文档的picker筛选器只能单独支持日期或者是时间,所以为了实现需求自己参考企业微信封装了个日期时间筛选器组件。原理筛选器的实现,我参考的是小程序官方方式,通过半屏弹窗(mp-half-screen-dialog)结合picker_view进行日期、时间的选择,最终在选择时间后,通过事件触发返回一个change事件,其中参数值为毫秒级时间戳。实现1.弹窗的显隐:在组件的 properties 中传入一个 show 字

2022-01-14 19:19:29 13070 34

原创 微信小程序mp-half-screen-dialog页面滚动问题解决

微信小程序mp-half-screen-dialog页面滚动问题解决微信小程序中使用 mp-half-screen-dialog ,在滑动 mp-half-screen-dialog 的时候,页面如果是处于scroll的情况下,会随之滑动,为了规避这个问题,可以使用以下解决方案(直接上代码):wxml:<mp-half-screen-dialog show="{{ show }}" maskClosable="{{ maskclosable }}" title="{{ detail.

2022-01-07 10:43:14 2414

原创 vue知识笔记

1.动态参数在vue中,我们都知道使用基本的指令,比如v-if、v-bind、v-on。我么都知道v-bind指令可以用于响应式地更新HTML的属性:<a v-bind:href="url">...</a>href在这里被称为参数,使用v-bind指令将a标签的href属性与url的值进行绑定。<a v-bind:[name]="url"> ... </a>这里的 name 会被作为一个 JavaScript 表达式进行动态求值,求得的值将会作为

2021-02-23 11:01:18 112

原创 HTML5专属解释

hmtl5

2020-05-30 13:02:24 119

原创 html中特殊字符的代码

html中特殊字符的代码以下代码结尾都包含(;)因为富文本编辑器会直接将代码转换为字符,所以用加号隔开。特殊字符字符描述字符代码空格符&nbsp + ;<小于号&lt + ;>大于号&gt + ;&和号&amp + ;¥人民币符&yen + ;©版权符&copy + ;®商标符&reg + ;°温度符&deg + ;±

2020-05-30 10:26:14 2589

原创 常见端口号对应服务

端口作用说明2121端口主要用于FTP(File Transfer Protocol,文件传输协议)服务。2323端口主要用于Telnet(远程登录)服务,是Internet上普遍采用的登录和仿真程序。2525端口为SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)服务器所开放,主要用于发送邮件,如今绝大多数邮件服务器都使用该协议。5353端口为DNS(Domain Name Server,域名服务器)服务器所开放,主要用于...

2020-05-19 14:34:34 6257

原创 map()、filter()、some()、every()的使用以及区别

map()map()方法会遍历自身的所有元素,并且返回一个新的数组,该新数组是原本数组中的所有元素都调用一次方法中所提供的回调函数所处理后的结果。map()中提供一个回调函数,回调函数中有三个参数分别是数组元素,元素索引,原数组本身,map() 不修改调用它的原数组本身(当然可以在 callback 执行时改变原数组)demo如下:// 将数组中的所有项值乘二let arr = [1, 2, 3, 4];let newArr = arr.map( item => item * 2)

2020-05-09 16:25:07 2569

原创 apply、call、bind的用法和区别

apply、call、bind用法var name = 'lucy',age = 10;var obj = { name: 'jack', objage: this.age, myfunc: (sex,num) => { console.log('this.name' + '的年龄是:' + this.age + ' 性别:' + sex + ' 手机号码:' + num);...

2020-04-30 13:27:45 219

转载 Web中性能优化的方法

减少http请求次数:CSS Sprites, JS、CSS 源码压缩、图片大小控制合适;网页 Gzip,CDN 托管,data 缓存 ,图片服务器前端模板 JS + 数据,减少由于HTML标签导致的带宽浪费,前端用变量保存 AJAX 请求结果,每次操作本地变量,不用请求,减少请求次数用 innerHTML 代替 DOM 操作,减少 DOM 操作次数,优化 javascript 性能当需要...

2020-04-16 15:35:30 128

原创 Vue中路由的相关知识

1.路由的概念路由分为后端路由和前端路由。1.后端路由:由服务器端进行实现,并完成资源的分发。2.前端路由:依靠hash值(锚链接)的变化进行实现;根据不同的事件来显示不同的页面内容,即事件与事件处理函数之间的对应关系。2.Vue-Router的使用步骤:引入js文件,vue-router.js需要依赖vue.js文件。添加路由链接:是路由中提供的标签,默认会被渲染为a标签,to属...

2020-03-21 16:35:55 189

原创 Vue中的接口调用

1.FetchFetch API是新的ajax解决方案 Fetch会返回Promisefetch不是ajax的进一步封装,而是原生js,没有使用XMLHttpRequest对象。<script type="text/javascript"> /* Fetch API 基本用法 */ fetch('http://localhost:3000/...

2020-03-20 17:14:39 4507

原创 Promise基本使用

Promise的基本使用实例方法: then()—得到正确的结果、catch()—获取错误的信息、finally()—成功与否都会执行静态方法:1.all()–Promise.all方法接受一个数组作参数,数组中的对象(p1、p2、p3)均为promise实例(如果不是一个promise,该项会被用Promise.resolve转换为一个promise)。它的状态由这三个promise实例决...

2020-03-20 17:01:23 239

原创 Jquery中的ajax

$.ajax() 的使用1.发送Ajax请求 <button id="btn">发送请求</button> <script src="/js/jquery.min.js"></script> <script> var params = {name: 'wangwu', age: 300} $('#btn').on('cli...

2020-03-20 16:43:19 123

原创 package.json文件使用说明

1.package.json文件项目描述文件,记录了当前项目信息,例如项目名称、版本、作者、github地址、当前项目依赖了哪些第三方模块等。使用 npm init -y 命令生成。2.package.json文件项目依赖在项目的开发阶段和线上运营阶段,都需要依赖的第三方包,称为项目依赖;使用 npm install 包名 命令下载的文件会默认被添加到 package.json 文件的 ...

2020-03-20 14:58:52 488

原创 Vue组件化开发相应知识点

Vue组件化开发相应知识点1.组件注册1.1 全局注册通过 Vue.component('组件名‘,{}) 方法进行注册;全局注册的组件任何实例都能使用。基本实例代码如下: <div id="app"> <button-counter></button-counter> </div> <script type=...

2020-03-17 23:03:44 183

原创 Vue的常用特性

Vue的常用特性1.表单修饰符.number (转换为数值).trim (自动去除用户输入的两端的空白符).lazy (将input事件切换成change事件)/** 自动将用户的输入值转为数值类型 **/<input v-model.number="age" type="number">/** 自动过滤用户输入的首尾空白字符 **/<input v-mode...

2020-03-15 16:33:02 174

原创 vue的基本模板语法

Vue的基本模板语法1. 指令指令的本质就是自定义的属性,在vue中都是以v-开头的。v-cloak (防止页面加载时出现闪烁的问题)<style type="text/css"> [v-cloak]{ display: none; } </style><div id="app"> <div v-cloak>{{m...

2020-03-12 18:40:33 361

原创 Git的相关使用命令

配置git配置提交人的姓名、邮箱git config --global user.name "你的名字"git config --global user.email "你的邮箱"使用git初始化gitgit init查看文件状态git status将文件添加到暂存区git add <file> / git add . 将文件全部添加到暂存区将文件添加到版本......

2020-03-07 20:29:17 255

原创 解决ajax 同源政策请求限制的三种方法

1.解决ajax请求限制我们知道同源政策是为了保证用户信息的安全,防止恶意的网站窃取数据。但有时候我们需要向非同源的服务器请求和响应数据,所有就需要解决ajax请求的限制。解决的方法有三种:Jsonp、CORS(跨域资源共享)、在服务器端绕过同源政策限制。以下默认服务器端口为80,非同源服务器端口为3000。2.方法一:Jsonp该方法将不同源的服务器端请求地址写在script标签的src属...

2020-03-04 16:28:47 882 1

原创 Jsonp函数的封装

Jsonp函数的封装jsonp 全称是 json with padding 意味 json 填充,其作用可以模拟 ajax 请求(但不同于ajax)。对jsonp 函数的具体封装如下:1. 在jsonp函数中创建script标签2. 对传递对象中的参数对象进行参数拼接3. 对调用的函数进行作用域提升,并且随机产生一个名称避免函数的覆盖4. 向页面中添加script标签5. 当scri...

2020-03-04 13:41:22 878

原创 css中清除浮动的方法总结

1.清除浮动的原理清除浮动主要是为了解决父级元素因为子级浮动引起内部高度为 0 的问题。清除浮动之后, 父级就会根据浮动的子盒子自动检测高度。父级有了高度,就不会到影响下面的标准流。2.清除浮动的方法一:添加标签法通过在浮动元素后面添加一个空的标签并且为其添加 clear:both 属性,例如:<div style="clear:both"></div>该方法的...

2020-03-03 23:18:26 217

原创 模板引擎在客户端的使用以及FormData在ajax中的使用

1.模板引擎众所周知模板引擎的作用是可以将数据和HTML拼接起来的。那么在客户端如何使用模板引擎将数据和HTML进行具体的拼接呢?具体步骤如下:下载 art-template 模板引擎库文件(template-web.js)并在 HTML 页面中引入库文件准备 art-template 模板告诉模板引擎将哪一个模板和哪个数据进行拼接将拼接好的html字符串添加到页面中通过模板语法告...

2020-03-03 17:50:40 177

原创 Ajax函数的封装

Ajax 函数的封装封装一个ajax 函数,每次调用ajax函数的时候只需要传递一个对象,对象中包含请求类型、请求地址、要传递的参数、content-type等等;当没有传递某些参数的时候,将使用某些默认值(函数中自定义默写默认值)。具体的函数封装如下:function Ajax(obj) { // 设置默认值 var defaults = { type: '...

2020-03-03 14:03:30 161

原创 Ajax的常见错误以及对应处理

Ajax的常见错误以及对应处理1. 网络畅通,服务器端能接收到请求,服务器端返回的结果不是预期结果。对应处理:判断http状态码,对其进行处理xhr.onload = function() { console.log(xhr.responseText); // console.log(xhr.status); // http状...

2020-02-28 23:18:12 484

原创 Ajax的基本使用

1. Ajax介绍Ajax 是浏览器提供的一套方法,可以实现页面无刷新更新数据,提高用户浏览网站应用的体验。其常见的应用场景如下:页面上拉加载更多数据列表数据无刷新分页表单项离开焦点数据验证搜索框提示文字下拉列表2. Ajax原理Ajax 相当于处在浏览器和客户端之间的接头人,传递浏览器与客户端之间的信息(发送请求以及接受响应),从而实现不刷新页面的情况下,局部更新页面的数据...

2020-02-28 22:36:54 117

原创 Javascript中的文件读取内置对象————FileReader

FileReaderFileReader 对象允许Web应用程序异步读取存储在用户计算机上的文件的内容FileReader()是一个构造函数FilerReader.readAsDataURL() 用于读取文件,是一个异步API具体使用方法如下:// 此代码用于将用户选择的文件展示在相应的位置var file = document.querySelector('#file'); ...

2020-02-27 14:50:49 375 2

原创 express框架中常用的第三方模块joi、formidable、mongoose-sex-page

Joijoi可以用于js对象的规则描述语言和验证器使用的方法:引入joi模块定义对象的验证规则使用joi.validate(par1,par2)方法进行验证。其中第一个参数是要进行验证的对象,第二个参数是对象的验证规则/***********示例代码************/const Joi = require('joi');const schema = { user...

2020-02-26 22:22:56 2053

原创 javascript中的正则表达式

正则表达式正则表达式( Regular Expression )是用于匹配字符串中字符组合的模式。在JavaScript中,正则表达式也是对象。正则表达式的应用:正则表通常被用来检索、替换那些符合某个模式(规则)的文本,例如验证表单:用户名表单只能输入英文字母、数字或者下划线, 昵称输入框中可以输入中文(匹配)。此外,正则表达式还常用于过滤掉页面内容中的一些敏感词(替换),或从字符串中获取我...

2020-02-23 19:53:33 148

原创 bcrypt---密码加密

bcrypt所需要的环境配置1. python 2.0 以上通过官方文档安装python,并且再系统的环境变量中添加python的安装路径。2. node-gyp通过 npm insatll -g node-gyp 命令安装node-gyp。3 windows-build-tools(需要以管理员身份运行)在命令行中以 npm install --global --production...

2020-02-22 19:30:31 155

原创 node.js中80端口被占用

node.js创建网站服务器时监听80端口被占用当执行js文件时,发生以下错误:在命令行中输入 netstat -ano 查看时哪个进程占用80端口:在任务管理器中打开PID,找到PID为4的:发现PID为4的进程是系统进程不能直接结束。因而我们回到命令行,然后使用netsh http show servicestate查看端口的使用状态:找到请求队列中的对应PID,再回到...

2020-02-18 23:36:17 1741 1

原创 express框架的学习与基本使用

1. 认识express框架Express是一个基于Node平台的web应用开发框架,它提供了一系列的强大特性:提供了方便简洁的路由定义方式对获取HTTP请求参数进行了简化处理对模板引擎支持程度高,方便渲染动态HTML页面提供了中间件机制有效控制HTTP请求拥有大量第三方中间件对功能进行扩展以下为express框架的基本使用:// 引入express框架const expre...

2020-02-18 22:09:55 407

原创 微信小程序之audio组件播放背景音乐

audio组件播放音频在微信小程序中可以通过audio组件实现背景音乐的效果,不过有一缺点,真机调试的时候没有声音1.wxml 文件<audio id="music" src="{{src}}"></audio>2.js文件onReady:function(){ // 使用 wx.createAudioContext 获取 audio 上下文 context...

2020-02-17 22:54:19 2959

原创 node中常用的第三方模块router、sever-static

1.router其功能是实现路由使用方法:获取路由对象调用路由对象创建路由启动路由使用代码:const getRouter = require('router')const router = getRouter();router.get('/index', (req, res) => { res.end('Hello World!')}) server.on...

2020-02-15 17:49:21 577 1

原创 artTemplate模板引擎基本使用方法

1. 模板引擎模板引擎能够让开发者以更加友好的方式拼接字符串,以及能够使得用户界面与业务数据分离,其能返回特定格式的文档;我们网页开发中返回的是HTML文档。2. artTemplate模板的安装以及使用使用命令行下载:npm install art-template在Js文件中用require方法引入模板引擎通过template()拼接数据和模板模板的后缀统一为:.art初步使...

2020-02-15 13:46:06 604

空空如也

空空如也

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

TA关注的人

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