自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

韩吉鑫的博客

IT技术交流

  • 博客(87)
  • 资源 (2)
  • 收藏
  • 关注

原创 Vue3新增API

provide/inject在这个版本上提供了依赖注入,在上级组件provide 提供注入选项,在需要注入变量的组件inject 注入。话不多说上代码。const app = Vue.createApp({})app.component('todo-list', { data() { return { todos: ['Feed a cat', 'Buy tickets'] } }, provide: { user: 'John Doe' },

2020-09-27 16:41:44 1254

原创 PM2区分环境启动

新建ecosystem.config.jsmodule.exports = { apps: [ { name: 'huike-cms', script: 'server/index.js', env: { NODE_ENV: 'production', RUN_ENV: 'production', }, env_prod: { NODE_ENV: 'production',

2020-09-07 17:51:22 1507

转载 nodejs 主流web框架对比

Node.js主流Web框架对比。由于C++所具有的优势,该项目组的研究人员首先考虑采用C++来编写程序。但对于硬件资源极其匮乏的单片式系统来说,C++程序过于复杂和庞大。另外由于消费电子产品所采用的嵌入式处理器芯片的种类繁杂,如何让编写的程序跨平台运行也是个难题。Node.js是专注高性能服务器开发的Javascript运行环境。我们将在这篇文章向大家介绍几款主流Node.js Web框架的特点及优缺点,希望给大家作为参考。主要参考的Node.js Web框架包括:express, koa, ha

2020-06-03 10:56:35 5792

原创 使用husky给项目添加git提交前的代码格式化,使团队代码格式统一

首先我们先了解一下huskyhusky 其实就是一个为 git 客户端增加 hook 的工具。将其安装到所在仓库的过程中它会自动在 .git/ 目录下增加相应的钩子实现在 pre-commit 阶段就执行一系列流程保证每一个 commit 的正确性。部分在 cd commit stage 执行的命令可以挪动到本地执行,比如 lint 检查、比如单元测试。当然,pre-commit 阶段执行的命令当然要保证其速度不要太慢,每次 commit 都等很久也不是什么好的体验。安装插件 yarn add h

2020-06-03 10:19:37 1015

原创 react hooks详解

react hooks详解useStateuseEffectuseContextuseRefuseReduceruseMemouseCallbackuseStateimport React, { useState } from "react";export default function Button() { const [buttonText, setButtonText] ...

2020-04-24 14:46:28 273

原创 23种设计模式 与 面向对象编程

1. 什么是面向对象把客观对象抽象成属性数据和对数据的相关操作,把内部细节和不想关的信息隐藏起来,把同一个类型的客观对象的属性数据和操作绑定在一起,封装成类,并且允许分成不同层次进行抽象,通过继承实现属性和操作的共享面向对象的分析 OOA面向对象的设计 OOD面向对象的编程 OOP1.1 概念类、对象(实例)父类是公共的class Animal{ construct...

2020-04-08 15:39:59 243

原创 SpringBoot 初探

1.安装运行环境 javaJdkhttps://www.oracle.com/technetwork/java/javase/downloads/index.html2.安装ideahttps://www.jianshu.com/p/bcd1b188b0e73.配置idea114.springBoot helloword pom.xml新建一个controller用...

2020-03-12 14:19:42 150

原创 Dva router跳转传参

第一种window.location.href = '/app?id=1';// 跳转到的页面取值import querystring from 'querystring';console.log(querystring.parse(location.search.replace('?', '')).id);第二种import { withRouter } fr...

2020-03-12 14:13:10 2466

转载 前端性能优化

性能优化:一、减少请求资源大小或者次数 1、尽量和并和压缩css和js文件。(将css文件和并为一个。将js合并为一个)  原因:主要是为了减少http请求次数以及减少请求资源的大小  打包工具:  webpack  gulp  grunt.  ....2、尽量所使用的字体图标或者SVG图标来代替传统png图  因为字体图标或者SVG是矢量图,代码编写出来的,方大不会变形,...

2020-01-15 17:14:45 183

原创 对 React Context 的理解以及应用

对 React Context 的理解以及应用在React的官方文档中,Context被归类为高级部分(Advanced),属于React的高级API,但官方并不建议在稳定版的App中使用Context。很多优秀的React组件都通过Context来完成自己的功能:比如react-redux的,就是通过Context提供一个全局态的store; 拖拽组件react-dnd,通过Con...

2020-01-03 16:15:38 229

原创 解决IOS微信浏览器键盘关闭后底部留白问题

解决IOS微信浏览器键盘关闭后底部留白问题document.body.addEventListener('focusout', () => { //软键盘收起的事件处理 let ua = window.navigator.userAgent; let app = window.navigator.appVersion; //$alert('浏览器版本: '...

2019-12-12 07:22:48 471

原创 node 获取文件夹目录 以及替换指定文件名称内容后并 执行脚本

目前公司项目遇到一个问题 10个相同结构项目同时打包三套环境代码并压缩故采用如下脚本实现自动化打包const path = require('path');const fs = require('fs');const argv = process.argv;const util = require('util');const exec = util.promisify(requ...

2019-11-20 22:46:12 655

原创 Nginx反向代理 负载均衡 缓存 压缩 跨域

反向代理server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_pass http://...

2019-11-15 14:12:01 281

原创 webpack 常用配置项

const path = require('path'); moudule.exports = { // entry 表示入口webpack 执行构建的第一步将从entry开始 // 类型可以使 string object array entry: './src/entry', // 只有一个入口时 entry: ['./src/entry', './src/e...

2019-11-09 23:09:45 301

原创 webpack-loader与全局变量引入

webpack-loader与全局变量引入expose-loader // 把模块内导入的变量暴露到windowwebpack.providePlugin() //把变量插入每个模块中externals // 使变量在被模块中引用时替换成x变量 并不打包inline-lodader // 行内loadernormal-loader // 普通loaderpost-loader ...

2019-11-06 10:17:23 692

原创 找色块小游戏

点此试玩/** * Created by 韩吉鑫 on 2017/8/7. */window.Findcolor=window.Findcolor||{};(function () { function Game() { this.toolView(); // this.color = "rgb("+parseInt(Math....

2019-11-04 17:39:04 481

原创 taro 路由问题集锦

首页里面有tab, 如果不先点击tab, h5跳转到其他页面会出现404。解决办法:把路由跳转相对路径改成绝对路径 Taro.navigateTo({ url: "../pick_city/index" }) 改为 Taro.navigateTo({ url: "/pages/pick_city/index" }) ```RN和...

2019-10-21 14:31:40 2815

转载 Taro中使用redux

1、在pages 同级目录新建3个文件夹。store、actions、reducers应用中所有的state都以一个对象树的形式储存在一个单一的store中。唯一的改变是触发action。store: 创建全局单一的store。actions:用于描述发生什么事件。reducers:用于action如何改变state树。2、如何获取store里面的state?(1)定义s...

2019-10-21 11:30:07 1613

转载 JS执行会阻塞DOM树的解析和渲染,那么CSS加载会阻塞DOM树的解析和渲染吗

结论:css加载不会阻塞DOM树的解析css加载会阻塞DOM树的渲染css加载会阻塞后面js语句的执行因此,为了避免让用户看到长时间的白屏时间,我们应该尽可能的提高css加载速度,比如可以使用以下几种方法:1.使用CDN(因为CDN会根据你的网络状况,替你挑选最近的一个具有缓存内容的节点为你提供资源,因此可以减少加载时间)2.对css进行压缩(可以用很多打包工具,比如webpack...

2019-10-14 11:02:10 313

转载 HTTP API 设计指南(响应部分)

前言这篇指南介绍描述了 HTTP+JSON API 的一种设计模式,最初摘录整理自 Heroku 平台的 API 设计指引Heroku 平台 API 指引。这篇指南除了详细介绍现有的 API 外,Heroku 将来新加入的内部 API 也会符合这种设计模式,我们希望非 Heroku 员工的API设计者也能感兴趣。我们的目标是保持一致性,专注业务逻辑同时避免过度设计。我们一直试图找出一...

2019-09-26 17:17:48 146

转载 HTTP API 设计指南(请求部分)

前言这篇指南介绍描述了 HTTP+JSON API 的一种设计模式,最初摘录整理自 Heroku 平台的 API 设计指引Heroku 平台 API 指引。这篇指南除了详细介绍现有的 API 外,Heroku 将来新加入的内部 API 也会符合这种设计模式,我们希望非 Heroku 员工的API设计者也能感兴趣。我们的目标是保持一致性,专注业务逻辑同时避免过度设计。我们一直试图找出一...

2019-09-26 17:08:10 165

原创 手写Promise

promise

2019-07-23 22:08:12 155

原创 vue+oss+element上传拿走不谢

vue+oss+element上传拿走不送为了前端小伙伴少走一些弯路element 上传部分为了前端小伙伴少走一些弯路最近公司业务有使用oss的业务 以下代码是基于oss 进行封装的代码const OSS = require('ali-oss')// 'aliyun_oss_bucket'=>"mrstatic"export const uploadOss = func...

2019-04-09 17:40:16 3111

转载 归并算法

function merge(left, right){ var result = []; while (left.length > 0 && right.length > 0) { if(left[0] < right[0]){ result....

2019-01-14 22:49:47 201

原创 mongo 操作符详解

pretty查询格式化db.col.find().pretty()$set修改器用来修改一个指定的键值(key)db.user.update({name: ‘hank’}, {$set: {kill: [‘code’]}})$unset用于将key删除db.user.update({name: ‘hank’}, {$unset: {age: ‘’})$inc对数字进行...

2018-12-13 14:26:19 628

原创 windows10自启动服务(计划任务与用户文件夹下的区别)

编写bat脚本比如我们想开机启动qq创建.bat写入start qq.exe设置开机自启动1.计划任务只能执行的脚本只能控制无UI的应用程序(启动UI界面的程序不能采用)2.用户文件夹自启动打开文件资源管理器C:\Users\你的用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup将bat脚本放入开机就...

2018-12-13 14:22:41 1943

转载 关于redis,学会这8点就够了

1、redis是什么redis是一种支持Key-Value等多种数据结构的存储系统。可用于缓存、事件发布或订阅、高速队列等场景。该数据库使用ANSI C语言编写,支持网络,提供字符串、哈希、列表、队列、集合结构直接存取,基于内存,可持久化。 2、支持的语言 3、redis的应用场景有哪些1、会话缓存(最常用)2、消息队列,比如支付3、活动排行榜或计数4、发布、订阅...

2018-12-13 14:17:49 156

转载 iOS 上线流程

iOS 上线流程今天说一说上线,希望对上线流程不太熟悉的小伙伴提供一些帮助。如果有不明白的地方,可以私信我哦!上线流程我们可以分为三部分:证书,APPID和描述文件的配置Xcode设置iTunes填写APP信息1,证书,APPID和描述文件的配置首先我们要登陆开发者网站开发者网站登陆开发者账号登陆...

2018-12-03 22:39:05 413

原创 CORDOVA 打包 IOS

CORDOVA 打包 IOS首先准备一台mac电脑防止版本过低,提前将电脑升级到最高版本(我的是mac OS Mojave)安装Xcode 或 升级到最新版本安装cordova去除滚定条去除白边调整icon ,启动页面安装Xcode 或 升级到最新版本打开appstore安装cordova去除滚动条- (void)viewDidLoad{ [super...

2018-12-03 22:03:01 3815 5

原创 H5视频,播放,暂停,重新播放

H5视频,播放,暂停,重新播放```<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.

2018-10-08 09:31:36 12082

转载 Python 常用库

环境管理管理 Python 版本和环境的工具p – 非常简单的交互式 python 版本管理工具。 pyenv – 简单的 Python 版本管理工具。 Vex – 可以在虚拟环境中执行命令。 virtualenv – 创建独立 Python 环境的工具。 virtualenvwrapper- virtualenv 的一组扩展。 包管理管理包和依赖的工具。pip...

2018-07-27 15:13:03 924

原创 electron 打包 各种平台

"scripts": {os系统:"packageDarwin": "electron-packager . 'Hosts' --platform=darwin --arch=x64 --icon=hosts.icns --out=./dist --asar --app-version=2.0.1 --ignore=\"(dist|src|docs|.gitignore|LICENSE|REA...

2018-07-24 09:30:16 2918

转载 NodeJS 实现基于 token 的认证应用

NodeJS 实现基于 token 的认证应用此段摘自http://zhuanlan.zhihu.com/FrontendMagazine/19920223英文原文http://code.tutsplus.com/tutorials/token-based-authentication-with-angularjs-nodejs–cms-22543 在讨论了关于基于 toke...

2018-07-24 09:26:18 1885

转载 前端进阶之路

一、开发工具 1. atom Atom 代码编辑器支持 Windows、Mac、Linux 三大桌面平台,完全免费,并且已经在 GitHub 上开放了全部的源代码。在经过一段长时间的迭代开发和不断改进后,Atom 终于从早期的测试版达到了 1.0 正式版了!相比之前的版本,在性能和稳定性方面都有着显著的改善。idea IDEA 全称IntelliJ IDEA,是java语言开发的集成环...

2018-07-24 09:10:29 1478

原创 webpack去除开发日志

在webpack.prod.config.js中修改为如下:new webpack.optimize.UglifyJsPlugin({ compress: { warnings: false, drop_debugger: true, drop_console: true }, sou...

2018-05-14 11:26:35 2502

原创 小程序手机上运行报错 SyntaxError,PC上开发运行不会报错

后台返回数据统一处理希望能帮助你 JSON.parse(JSON.stringify(res.data.data).replace(/\u00A0|\u2028|\u2029|\uFEFF/g, '' ))

2018-05-10 13:56:10 909

转载 React入门之路

React入门之路jsx注释 1、在标签内部的注释需要花括号 2、在标签外的的注释不能使用花括号 ReactDOM.render( /*注释 */ <h1>孙朝阳 {/*注释*/}</h1>, document.getElementById('example'));多标签 ...

2018-02-26 18:34:21 507

转载 JS Object 详解

Object是在javascript中一个被我们经常使用的类型,而且JS中的所有对象都是继承自Object对象的。虽说我们平时只是简单地使用了Object对象来存储数据,并没有使用到太多其他功能,但是Object对象其实包含了很多很有用的属性和方法,尤其是ES5增加的方法,因此,本文将从最基本的介绍开始,详细说明了Object的常用方法和应用。基础介绍创建对象首先我们都知道

2017-12-21 10:47:53 3393

翻译 Java Date

Java Date SimpleDateFormat ft = new SimpleDateFormat (“E yyyy.MM.dd ‘at’ hh:mm:ss a zzz”); 这一行代码确立了转换的格式,其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是时、分、秒。 注意:有的格式大写,有的格式小写,例如 MM 是月份,mm 是分;HH 是 2

2017-12-19 08:51:47 226

转载 使用homebrew安装Java环境

查询javabrew cask search java查看版本信息brew cask info java从官网下载并安装 JDK 8brew cask install java需要安装 JDK 7 或者 JDK 6,可以使用homebrew-cask-versions:brew tap caskroom/versionsbrew cask install jav

2017-12-18 10:31:54 12266 1

打包AndroidAPK并上线

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

2017-09-15

angular学习笔记

为学习angular的提供方便的学习资料

2017-08-22

空空如也

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

TA关注的人

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