自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 个人博客

以后文章优先发布到 https://ropehuo.gitee.io/ 后续可能会将博客园的内容一步一步迁移过去

2021-03-30 17:19:00 186

原创 GitHub-Actions的使用教程

1、根据GitHub提供的文档生成密钥,生成好后记得复制下来,要不然再访问页面的时候密钥就不展示了。# 生成密钥时主要需要开启的权限有1、rope 下所有权限2、admin:repo_hook 下所有权限3、delete_repo 下所有权限# 主要是关于rope的权限,尽量都开启2、在要使用Actions功能的仓库的Settings中的Secrets中新增一条。Name为...

2020-11-19 16:06:00 3729 2

原创 uni-app多端开发注意事项

关于vue1、注意 如果使用老版的非自定义组件模式,即manifest中"usingComponents":false,部分模版语法不支持,但此模式已于2019年11月起下线。2、data 必须声明为返回一个初始数据对象的函数;否则页面关闭时,数据不会自动销毁,再次打开该页面时,会显示上次数据。3、class 支持的语法:<view :class="{ active: is...

2020-09-24 10:25:00 1173

原创 NuxtJS快速入门

服务器端渲染(SSR)知识储备ES6NodejsVueReactAngular什么是服务器端渲染前端渲染:html页面作为静态文件存在,前端请求时后端不对该文件做任何内容上的修改,直接以资源的方式返回给前端,前端拿到页面后,根据写在html页面上的js代码,对该html的内容进行修改。服务端渲染:前端发出请求后,后端在将HTML页面返回给前端之前,先把HTML页面...

2020-09-21 17:49:00 2870 1

原创 算法的理论与实践

算法大O表示法用来描述计算机算法的效率,数据项个数发生变化时,算法的效率也会跟着发生改变常见的大O表示方法符号名称O(1)常数的O(log(n))对数的O(n)线性的O(nlog(n))线性和对数乘积O($n^2$)平方O($2^n$)指数的当我们写一个算法的时候,其运行过程,并不是完全跟上面例子相同,它可能是...

2020-03-15 14:18:00 388

原创 使用GitHub+Travis-CI+Docker打造自动化流水线

全文采用的是阿里云的ESC服务器,系统是CentOS 7示例项目是NodeJS编写,本文主要是Docker的使用,在文章前2/3都是Docker命令介绍,最后我们会完成一个自动化的示例。准备注册账号GitHub账号发布项目到GitHubTravis-CI账号监听GitHub上项目改变,将其打包发布到DockerHubDockerHub账号Travis-CI将项目发布到...

2020-02-23 17:19:00 446

原创 在服务器上搭建远端git仓库

推荐使用运行Liunx的机器请获取root权限后进行下面操作安装git# 检查是否安装了git如果有版本号就无需再安装git -v# 安装gitsudo apt-get install git创建git服务sudo adduser git创建证书登录收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件按照本文找id_rsa.pub文件,把所有公钥导入到...

2020-02-19 12:18:00 623

原创 Vue中的$Bus使用

Vue中的$Bus使用将Bus单独抽离成一个文件Bus.jsimport Vue from 'vue';let Bus = new Vue();export default Bus;创建两个兄弟组建C2.vue<template> <view> <h1>c2</h1> </view&gt...

2020-02-19 11:38:00 2608

原创 C语言笔记 16_标准库&stdio&stdlib&string&time

<stdio.h>简介stdio .h 头文件定义了三个变量类型、一些宏和各种函数来执行输入和输出。库变量下面是头文件 stdio.h 中定义的变量类型:序号变量 & 描述1size_t 这是无符号整数类型,它是 sizeof 关键字的结果。2FILE 这是一个适合存储文件流信息的对象类型。3fpos_t 这是一个适合存储...

2020-01-13 13:45:00 438

原创 C语言笔记 15_标准库&locale&math&setjmp&signal&stdarg&stddef

<locale.h>简介locale.h 头文件定义了特定地域的设置,比如日期格式和货币符号。接下来我们将介绍一些宏,以及一个重要的结构 struct lconv 和两个重要的函数。库宏下面列出了头文件 locale.h 中定义的宏,这些宏将在下列的两个函数中使用:序号宏 & 描述1LC_ALL 设置下面的所有选项。2LC_COL...

2020-01-09 20:18:00 172

原创 C语言笔记 14_标准库&assert&ctype&errno&float&limits

C 标准库<assert.h>简介C 标准库的 assert.h头文件提供了一个名为 assert 的宏,它可用于验证程序做出的假设,并在假设为假时输出诊断消息。已定义的宏 assert 指向另一个宏 NDEBUG,宏 NDEBUG 不是 <assert.h> 的一部分。如果已在引用 <assert.h> 的源文件中定义 NDEBUG 为宏名称...

2019-12-31 11:33:00 184

原创 C语言笔记 13_排序算法

排序算法冒泡排序冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。过程演示:#include <stdio.h>void bubble_sort(int arr[], int len) { int i, j, temp; fo...

2019-12-30 13:59:00 208

原创 C语言笔记 12_可变参数&内存管理&命令行参数

可变参数有时,您可能会碰到这样的情况,您希望函数带有可变数量的参数,而不是预定义数量的参数。C 语言为这种情况提供了一个解决方案,它允许您定义一个函数,能根据具体的需求接受可变数量的参数。下面的实例演示了这种函数的定义。int func(int, ... ) { . . .} int main(){ func(2, 2, 3); func(3,...

2019-12-28 09:04:00 205

原创 C语言笔记 11_头文件&强制类型转换&错误处理&递归

头文件头文件是扩展名为 .h 的文件,包含了 C 函数声明和宏定义,被多个源文件中引用共享。有两种类型的头文件:程序员编写的头文件和编译器自带的头文件。在程序中要使用头文件,需要使用 C 预处理指令 #include 来引用它。前面我们已经看过 stdio.h 头文件,它是编译器自带的头文件。引用头文件相当于复制头文件的内容,但是我们不会直接在源文件中复制头文件的内容,因为这么做很...

2019-12-26 10:24:00 465

原创 C语言笔记 10_文件读写&预处理器

文件读写上一章我们讲解了 C 语言处理的标准输入和输出设备。本章我们将介绍 C 程序员如何创建、打开、关闭文本文件或二进制文件。一个文件,无论它是文本文件还是二进制文件,都是代表了一系列的字节。C 语言不仅提供了访问顶层的函数,也提供了底层(OS)调用来处理存储设备上的文件。本章将讲解文件管理的重要调用。打开文件您可以使用 fopen( ) 函数来创建一个新的文件或者打开一个已有...

2019-12-24 14:39:00 298

原创 C语言笔记 09_共用体&typedef&输入|输出

共用体共用体允许您在相同的内存位置存储不同的数据类型。您可以定义一个带有多成员的共用体,但是任何时候只能有一个成员带有值。共用体提供了一种使用相同的内存位置的有效方式。定义共用体为了定义共用体,您必须使用 union 语句,方式与定义结构体类似。union 语句定义了一个新的数据类型,带有多个成员。union 语句的格式如下:union [union tag]{ memb...

2019-12-23 10:36:00 898

原创 C语言笔记 08_函数指针&回调函数&字符串&结构体&位域

函数指针函数指针是指向函数的指针变量。通常我们说的指针变量是指向一个整型、字符型或数组等变量,而函数指针是指向函数。函数指针可以像一般函数一样,用于调用函数、传递参数。函数指针变量的声明:// 声明一个指向同样参数、返回值的函数指针类型typedef int (*fun_ptr)(int,int); 以下实例声明了函数指针变量 p,指向函数 max:#include &l...

2019-12-20 09:06:00 370

原创 C语言笔记 07_枚举&指针

emum(枚举)枚举是 C 语言中的一种基本数据类型,它可以让数据更简洁,更易读。枚举语法定义格式为:enum 枚举名 {枚举元素1,枚举元素2,……};举个例子,比如:一星期有 7 天,如果不用枚举,我们需要使用 #define 来为每个整数定义一个别名:#define MON 1#define TUE 2#define WED 3#define THU 4#...

2019-12-19 17:34:00 1016

原创 C语言笔记 06_作用域&数组

作用域任何一种编程中,作用域是程序中定义的变量所存在的区域,超过该区域变量就不能被访问。C 语言中有三个地方可以声明变量:在函数或块内部的局部变量在所有函数外部的全局变量在形式参数的函数参数定义中局部变量在某个函数或块的内部声明的变量称为局部变量。它们只能被该函数或该代码块内部的语句使用。局部变量在函数外部是不可知的。全局变量全局变量是定义在函数外部,通常是在程序的顶...

2019-12-14 14:58:00 307

原创 C语言笔记 05_判断&循环&函数

判断C 语言把任何非零和非空的值假定为 true,把零或 null 假定为 false。下面是大多数编程语言中典型的判断结构的一般形式:判断语句C 语言提供了以下类型的判断语句。点击链接查看每个类型的细节。语句描述if 语句一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。if...else 语句一个 if 语句 后可跟一个可选的 else...

2019-12-14 09:35:00 413

原创 C语言笔记 04_运算符

运算符运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C 语言内置了丰富的运算符,并提供了以下类型的运算符:算术运算符关系运算符逻辑运算符位运算符赋值运算符杂项运算符算术运算符下表显示了 C 语言支持的所有算术运算符。假设变量 A 的值为 10,变量 B 的值为 20,则:运算符描述实例+把两个操作数相加A + B 将得到 30...

2019-12-11 17:57:00 180

原创 C语言笔记 03_常量&存储类

常量常量是固定值,在程序执行期间不会改变。这些固定的值,又叫做字面量。常量可以是任何的基本数据类型,比如整数常量、浮点常量、字符常量,或字符串字面值,也有枚举常量。整数常量整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,不带前缀则默认表示十进制。整数常量也可以带一个后缀,后缀是 U 和 L 的组合,U 表示无符号整数(u...

2019-12-10 17:49:00 134

原创 C语言笔记 02_基本语法&数据类型&变量

基本语法令牌C 程序由各种令牌组成,令牌可以是关键字、标识符、常量、字符串值,或者是一个符号。例如,下面的 C 语句包括五个令牌:printf("Hello, World! \n");这五个令牌分别是:printf("Hello, World! \n");分号 ;在 C 程序中,分号是语句结束符。也就是说,每个语句必须以分号结束。它表明一个逻辑实体的结束。注释C...

2019-12-03 09:35:00 169

原创 C语言笔记 01_介绍&环境设置&编译执行

前言我是作为一个前端开发者入的编程世界,经过时间的推移,我发现对于编程底层的一些东西一点都不了解,只拘泥于表面,所以想尝试学习C语言然后进一步了解底层机制。介绍C 语言是一种通用的、面向过程式的计算机程序设计语言。最初是由丹尼斯·里奇在贝尔实验室为开发 UNIX 操作系统而设计的。在 1978 年,布莱恩·柯林汉(Brian Kernighan)和丹尼斯·里奇(Dennis R...

2019-12-02 10:39:00 79

原创 AST抽象语法树 Javascript版

在javascript世界中,你可以认为抽象语法树(AST)是最底层。 再往下,就是关于转换和编译的“黑魔法”领域了。现在,我们拆解一个简单的add函数function add(a, b) { return a + b}首先,我们拿到的这个语法块,是一个FunctionDeclaration(函数定义)对象。用力拆开,它成了三块:一个id,就是它的名字,即add两...

2019-11-26 11:48:00 641

原创 CSS Grid 网格布局

CSS Grid 网格布局一、概括1.1功能将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局。1.2和flex的区别Flex 布局是轴线布局,只能指定"项目"针对轴线的位置。Grid 布局则是将容器划分成"行"和"列",产生单元格,然后指定"项目所在"的单元格。二、基本概念2.1 容器和项目采用网格布局的区域,称为"容器"。容器内部采用网格定位的子元素...

2019-11-25 10:55:00 156

原创 再次梳理AMD、CMD、CommonJS、ES6 Module的区别

AMDAMD一开始是CommonJS规范中的一个草案,全称是Asynchronous Module Definition,即异步模块加载机制。后来由该草案的作者以RequireJS实现了AMD规范,所以一般说AMD也是指RequireJS。RequireJS的基本用法通过define来定义一个模块,使用require可以导入定义的模块。//a.js//define可以传入三个参...

2019-10-31 09:49:00 269

原创 Travis CI持续集成使用

用好这个工具不仅可以提高效率,还能使开发流程更可靠和专业化,从而提高软件的价值。而且,它对于开源项目是免费的,不花一分钱,就能帮你做掉很多事情。一、什么是持续集成?Travis CI 提供的是持续集成服务(Continuous Integration,简称 CI)。它绑定 Github 上面的项目,只要有新的代码,就会自动抓取。然后,提供一个运行环境,执行测试,完成构建,还能部署到...

2019-10-21 17:21:00 91

原创 mpvue快速入门

主要特性使用 mpvue 开发小程序,你将在小程序技术体系的基础上获取到这样一些能力:彻底的组件化开发能力:提高代码复用性完整的 Vue.js 开发体验方便的 Vuex 数据管理方案:方便构建复杂应用快捷的 webpack 构建机制:自定义构建策略、开发阶段 hotReload支持使用 npm 外部依赖使用 Vue.js 命令行工具 vue-cli 快速初始化项目H5...

2019-10-21 15:22:00 174

原创 前端中容易让人忽略的知识点

1、null对于null有一个历史存留的 bug,null是对象类型吗?虽然我们使用 typeof 检测null是对象类型,这其实是一个 bug。1.1 原因是什么因为 JS 最初的版本是 32 位系统的,为了将性能将用低位存储变量类型信息,000 开头表示代表的是对象,此时null表示全零,所以系统就错误的将null判断为对象类型。虽然 JS 内部判断代码已经更改,但是这个 bu...

2019-10-11 14:51:00 181

原创 H5移动端开发遇见的东西

常见的有viewport、强制浏览器全屏、IOS的Web APP模式、可点击元素出现阴影本文主要讲一些其他的或者实用的优化手段。1. 弹出数字键盘<!-- 有"#" "*"符号输入 --><input type="tel"><!-- 纯数字 --><input pattern="\d*">安卓跟IOS的表现形式应该不一样,大...

2019-10-11 14:41:00 152

原创 创建一个自己的Vue UI组件库,并将它发布在npm上

本文仅限于入门级,没有成规模制作,希望能对你有所帮助。因为在开发多个项目中可能会用到同一个组件,那么我们通过复制粘贴的形式更新,无异于是笨拙的,我们可以通过上传到npm后,不断迭代npm包来实现更新。前期准备初始化project这里我们使用vue-cli来初始化一个vue项目。npm install -g @vue/cli or yarn global add @vue/cli...

2019-10-08 10:49:00 900

原创 前端笔记之微信小程序(四)WebSocket&Socket.io&摇一摇案例&地图|地理位置

一、WebSocket概述http://www.ruanyifeng.com/blog/2017/05/websocket.htmlWorkerman一款开源高性能异步PHP socket即时通讯框架https://workerman.netHTTP是无连接的:有请求才会有响应,如果没有请求,服务器想主动推送信息给浏览器是不可能的。比如图文直播、聊天...

2019-08-08 10:13:00 315

原创 前端笔记之微信小程序(三)GET请求案例&文件上传和相册API&配置https

一、信息流小程序-GET请求案例1.1服务端接口开发一定要养成接口的意识,前端单打独斗出不来任何效果,必须有接口配合,写一个带有分页、关键词查询的接口:分页接口:http://127.0.0.1:3000/info?page=1查询接口:http://127.0.0.1:3000/search?word=李详情接口:http://127.0.0.1:3000/xian...

2019-08-07 16:48:00 540

原创 前端笔记之微信小程序(二){{}}插值和MVVM模式&数据双向绑定&指令&API

一、双花括号{{}}插值和MVVM模式1.1 体会{{}}插值index.wxml的标签不是html的那些标签,这里的view就是div。{{}}这样的插值写法,叫做mustache语法。mustache是胡子的意思,因为{{}}像胡子。<view class="container"><view class="title"> 我是...

2019-08-07 16:07:00 1877

原创 前端笔记之微信小程序(一)初识微信小程序&WXSS与CSS|WXML与HTML的差异&像素和DPR...

一、小程序概述2017 年 1 月 9 日小程序正式上线,腾讯开放了个人开发者开发小程序,小程序从此就开始火爆,这一年,小程序狂揽 4 亿用户、1.7 亿的日常活跃,上线 58 万个。这是一个巨大的机会,对于企业宣传,拉新用户存在变革性的影响。小程序的本质是:轻应用,就是不用安装就能使用的手机APP。“跳一跳”养成了大家下拉寻找常用小程序的习惯。小程序对开发者而...

2019-08-07 10:35:00 3276

原创 前端笔记之React(八)上传&图片裁切

一、上传formidable天生可以处理上传的文件,非常简单就能持久上传的文件。今天主要讲解的是,前后端的配合套路。上传分为同步、异步。同步公司使用非常多,异步我们也会讲解。1.1 先看一下antd中的Form和代码校验我们看antd中的Form组件,https://ant.design/components/form-cn/所谓的装饰器指的是将一个组件作为...

2019-08-07 09:26:00 358

原创 前端笔记之React(七)redux-saga&Dva&路由

一、redux-saga解决异步redux-thunk 和 redux-saga使用redux它们是必选的,二选一,它们两个都可以很好的实现一些复杂情况下redux,本质都是为了解决异步action而生,使redux保持完整性,不至于太过混乱。redux-saga 是一个用于管理Redux 应用异步操作的中间件。 redux-saga 通过创建 Sagas将所有的异步操作逻辑收集在一个地方集中...

2019-08-02 16:07:00 818

原创 前端笔记之React(六)ES6的Set和Map&immutable和Ramda和lodash&redux-thunk

一、ES6的Set、Map数据结构Map、Set都是ES6新的数据结构,都是新的内置构造函数,也就是说typeof的结果,多了两个:Set 是不能重复的数组Map 是可以任何东西当做键的对象ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。let s = new Set();s.add(1);s.add(2);s....

2019-08-02 13:47:00 687

原创 前端笔记之React(五)Redux深入浅出

一、Redux整体感知Redux是JavaScript状态管理容器,提供了可被预测状态的状态管理容器。来自于Flux思想,Facebook基于Flux思想,在2015年推出Redux库。中文网站:http://www.redux.org.cn/官方git:https://github.com/reduxjs/redux首先要引redux.js包,这个包提供了Redux对象,这...

2019-08-02 09:34:00 135

空空如也

空空如也

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

TA关注的人

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