自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 问答 (1)
  • 收藏
  • 关注

原创 从零搭建Sentry

私有化搭建Sentry

2022-12-08 15:47:46 2971 2

原创 Monorepo or 物料市场?结合工作实际情况对公司现有前端体系的思考

去年年中基于若依vue前端框架进行了改造,加上后端的配合,我写了一套脚手架和项目中后台模板。中后台模板中包含了许多基础代码,比如登录/注册、路由、权限等等相关功能。这个中后台模板是基于我们实际开发定制的,所以跟通用的中后台模板还不一样,可以认为是快速搭建系统的一种解决方案。

2023-02-15 16:17:10 663

原创 对于任务安排的思考

搞清楚自己的主要目标和次要目标,完成主要目标的主要任务才是把事情做好的关键。

2023-01-31 16:20:46 213

原创 推送到gitlab仓库

推送仓库到gitlab

2022-09-22 10:22:14 222

原创 构建在xp(sp3)系统上nw.js能正常使用的node-ffi模块

安装基础配置安装nvmnvm下载node版本5.12.0 32并且切换到该版本。如果你只用5.12.0版本开发,那么可以跳过这一步。如果安装失败,可以在网上搜索相关资料。(一般都是卸载干净node版本后再进行安装,包括node的缓存目录等等)nw.js在xp系统上最新的LTS版本为0.14.7,对应能支持最高的node版本为5.x。而最新的5.xnode版本为5.12.0。为了支持在32位系统中也能正常使用,所以建议安装32版本。对应命令为:nvm install 5.12.0 32

2020-08-20 14:09:32 1112

原创 npm 注册/登录报错

报错内容npm adduser注册报错E:\git\xx>npm addusernpm ERR! Unexpected token < in JSON at position 0 while parsing near '<html>npm ERR! <head><title...'npm login登录报错E:\git\xx>npm loginnpm ERR! Unexpected token < in JSON at positio

2020-07-23 11:28:10 1654 1

原创 在vscode中调试webpack

前言接手了公司的新项目,但是由于对整个运作流程不了解,想要一步步进行调试加深对项目印象,所以搜索了相关资料,结合自己实际情况进行调试。调试的两个关键文件package.json正常的package.json{ "name": "my-web", "version": "0.0.1", "scripts": { "dev": "node scripts/start.js", "build": "node scripts/build.js", "test": "n

2020-05-15 15:15:30 1249

原创 模拟键盘、鼠标操作或Windows hook 在部分软件失效的问题

用户界面权限隔离(UIPI)在Windows中的权限系统除了在进程之间提供内核对象的访问保护,窗口系统还利用完整性级别来拒绝低完整性级别的进程访问/更新高完整性级别的进程的用户界面。这个机制称为用户界面权限隔离(User InterfacePrivilege Isolation, UIPI)操作系统将封锁从完整性级别较低的进程post的(通过PostMessage)、发送的(通过Se...

2019-11-20 20:34:57 2319

原创 为什么编程语言中可以用 a+=b 表示a=a+b,而a=+b不可以呢?

前言在我刚刚开始学习编程的时候,经常分不清+= 和 =+的区别,总是会忘记。现在学习编程很久了,我想我可以解释为什么编程语言中可以用 a+=b 表示a=a+b,而a+=b不可以了。词法分析在解释上面那个问题之前,我们该简单地了解一下词法分析。百度百科:词法分析(英语:lexical analysis)是计算机科学中将字符序列转换为单词(Token)序列的过程。进行词法分析的程序或者函...

2019-11-14 17:16:00 1589

原创 百度语音合成 之 返回值问题

在百度语音合成浏览器跨域访问示例 中展示了如何请求合成的语音,在请求方式及参数基本说明 这块说明了返回值问题:需要根据 Content-Type的头部来确定是否服务端合成成功如果合成成功,返回的Content-Type以“audio”开头aue =3 ,返回为二进制mp3文件,具体header信息 Content-Type: audio/mp3;aue =4 ,返回为二进制pcm文件,...

2019-03-17 21:18:20 1413

原创 AngularJS ng-repeat绑定input元素的值

使用repeat循环输出指定的HTML,绑定input元素。ng-bindng-bind在使用赋值表达式生成数据模型的同时,还绑定变量到元素的innerHTML中;ng-valueng-value在使用赋值表达式生成数据模型的同时,还绑定变量到元素的value属性中;ng-modelng-model有点特殊,专用于表单元素,即只能用于表单元素,用于其它元素无效.它实现了数据...

2018-11-22 17:54:58 2561

原创 Node.js 调用C++库

Node.js 调用C++库前言调用方法和使用技巧Buffer类常用的buffer方法:Buffer.alloc(size[, fill[, encoding]])Buffer.from(array)Buffer.from(buffer)Buffer.from(string[, encoding])相关库介绍C++ enum(枚举) 转JavaScript 对象导出函数ref 中常用的方法内置简写...

2018-11-13 15:01:17 4420 1

原创 【JavaScript】在websocket里面添加Token

websocket协议在握手阶段借用了HTTP的协议,但是在JavaScript websocketAPI中并没有修改请求头的方法。var token='dcvuahsdnfajw12kjfasfsdf34'send发送参数var ws = new WebSocket("ws://" + url + "/webSocketServer");ws.onopen=functio...

2018-09-10 17:31:38 34481 14

原创 C++ 初始化变量及注意事项

C++初始化变量C++初始化变量一共有四种方式等于号,’=’初始化int a = 0;在等号的右边输入初始值。括号,’()’初始化int a(0);在括号的中间输入初始值。花括号+等于号,’{}’+’=’初始化,又称为初始化列表int a={0};在等号右边的花括号里面输入值。花括号,’{}’声明,又称为初始化列表int a{0};在花括号里面输...

2018-07-08 19:12:58 5868

原创 有趣的js---获取随机字符串

优雅的获取数字+字母组成的字符串Math.random().toString(36).substring(2)原理Math是一个内置对象,它具有数学常数和函数的属性和方法。 random是Math对象的一个方法,它返回一个浮点, 伪随机数在范围[0,1),也就是说,从0(包括0)往上,但是不包括1(排除1)。 例如:Math.random()--&gt; 0.51...

2018-06-04 21:15:07 9193 1

转载 前后端分离实践

原作者:边城 原文地址:https://segmentfault.com/a/1190000012747428前后端分离并不是什么新鲜事,到处都是前后端分离的实践。然而一些历史项目在从一体化 Web 设计转向前后端分离的架构时,仍然不可避免的会遇到各种各样的问题。由于层出不穷的问题,甚至会有团队质疑,一体化好好的,为什么要前后端分离?说到底,并不是前后分离不好,只是可能不适合,或者

2018-01-16 16:57:09 333

原创 关于CSS的布局的一些想法与建议

前言前段时间做了创匠科技官网的自适应网页,在编写过程中收益良多。之后又参与了公司的PC收银台的开发,对其中CSS的修改痛苦不已。痛定思痛,参考了阮一峰老师的《深入理解bootstrap》一书,总结出一些关于CSS布局的想法与建议。CSS框架的设计基本思想CSS使用的基本理论就是一个A/O模式。 A即append,添加; O即overwrite,覆写; 通过添加来逐步增加样式,

2018-01-05 19:39:16 416

翻译 webpack-stream

最近实习了,自己的空余时间不是很多,文章产出也变少了。今天提前完成任务,恰逢要用到gulp的webpack-stream插件,今天就来翻译+学习一下如何使用它。github的webpack-stream仓库地址:https://github.com/shama/webpack-stream安装使用npm安装:npm install --save-dev webpack-stream使用cnpm安装:

2017-12-07 16:40:47 2728 2

原创 如何让boostrap的栅栏系统高度不坍塌

方法一(让内部div获取高度):height:0px;padding-bottom:100%方法二(让内部div获取高度,同时垂直居中。):height:0px;padding:50% 0;

2017-12-06 10:07:47 683

原创 TypeScript自动化工作流程(下)

自动化测试工具自动化测试工具能够自动化地执行应用里的单元测试。 单元测试是指针对代码中的某个函数或某个部分(单元)进行的测试。通过单元测试,可以保证函数按照预期在工作。通过使用自动化测试工具,可以自动在多个浏览器内执行应用的测试套件,而不必手动打开浏览器运行测试。我们使用的自动化测试工具叫做Karma。Karma在Angular2中也有被使用到。 Karma可以和多个流行的单元测试框架兼容。

2017-11-26 20:42:25 1446

翻译 Karma中文配置API

Karma Configuration Options 参数 作用 autoWatch Type:Boolean。默认为true。启用或禁用监视文件,当这些文件被改变时,执行测试。 autoWatchBatchDelay Type:Number。默认为250。当karma监视这些文件的变动时,它会尝试将多个更改分批处理到一个单独的运行中,以便测试运行器不会尝试启动并重新启动正在

2017-11-15 17:18:25 3639

原创 TypeScript自动化工作流程(中)

自动化任务工具自动化任务工具是用来自动化地执行开发过程中需要重复进行的任务。这些任务包括编译TS文件、压缩JS文件等等。目前较为流行的两个JavaScript自动化工具分别是Grunt和Gulp。Grunt的插件数相对较多,在Grunt中,我们使用文件作为任务的输入和输出。Gulp中,我们使用的 流 的方式来构建系统。Gulp插件更倾向于使用代码来描述任务,这使得Gulp的可读性更高。本人选择Gu

2017-11-10 17:38:50 2222

原创 TypeScript自动化工作流程(上)

在实际的开发中,我们往往会用到很多自动化的工具以协助我们进行开发。这些工具包括:开发者编辑器版本控制工具包管理工具自动化任务工具持续集成工具脚手架工具当然你还必须先安装Node.js。开发者编辑器和版本控制工具开发工具开发TS的编辑器,目前流行的有 Atom、 Visual Studio Code 和 WebStrom 等等。这里不再详细讲述,有兴趣的可以看看

2017-11-03 09:42:53 1380

原创 TypeScript类、接口、继承

TS引入了 Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。        基本上,TS的 class 可以看作只是一个语法糖,它的绝大部分功能,ES5 都可以做到,新的 class 写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。类       定义一个类class Point { constructor(x, y) { this.x = x

2017-11-01 17:20:38 16394

原创 TypeScript联合类型、类型守护、类型别名、环境声明

联合类型TS允许声明联合类型:var myType:string[]|string|number|boolean;//myType类型可以是字符串数组、字符串、数字、布尔值myType="type";myType=["a","b","c"];myType=100;myType=false;//不可以是其他类型myType=function(){};//报错类

2017-10-26 19:55:38 7278

转载 匿名函数(Lambda表达式)与箭头函数

“Lambda 表达式”(lambda expression)是匿名函数的别称。 在ES6中,允许使用箭头=>定义匿名函数。var f = v => v;上面的箭头函数等同于:var f = function(v) { return v;};如果箭头函数不需要参数或需要多个参数,就使用一个圆括号代表参数部分。var f = () => 5;// 等同于var f = function (

2017-10-26 16:57:09 11986

转载 详解cookie纪要

原作者:晚晴幽草轩 目录:背景Cookie详解设置Cookie时需注意Cookie格式Comment属性Domain属性Max-Age属性Path 属性Secure 属性Version 属性Cookie的创建Cookie 基础知识Cookie的使用cookie 基本操

2017-10-24 20:21:14 203

原创 JavaScript面向对象技术·原型与原型链

在JavaScript世界中,一切都可以看做对象。与对象关系最密切的有两个概念:原型和原型链。原型在JavaScript世界中,原型具体可以分为两种:隐式原型显示原型隐式原型JavaScript中任意对象都有一个内置属性[[prototype]]。一般情况下我们是没办法获取到这个内置属性的。不过在ES5中内置了该属性标准的Get方法:Object.getProtypeOf()。

2017-10-21 15:18:36 348

原创 HTML5--常见的新属性(后)

上一篇文章:HTML5–常见的新属性(中)iframe标签frame 元素会创建包含另外一个文档的内联框架(即行内框架)。sandbox属性该属性会对iframe框架中的内容启用一些额外的限制条件。 值 描述 “” 启用所有限制条件 allow-same-origin 允许 iframe 内容被视为与包含文档有相同的来源。如果未使用该关键字,这个操作将不可用。

2017-10-15 14:35:22 465

原创 HTML5--常见的新属性(中)

上一篇文章:HTML5–常见的新属性(前)表单相关属性这里涉及到的标签,包括form标签、input标签、button标签、textarea标签、select标签、keygen标签、label标签等等。新增属性主要包括以下几种:autocompletenovalidate和formnovalidateautofocusformformactionformenctypeformmetho

2017-10-11 13:13:16 883

原创 HTML5--常见的新属性(前)

HTML5新增了一些新的属性(或者为旧的元素赋予了新的意义),这些属性都为我们带来了些什么改变呢? 新增的属性划分: ①全局属性 ②JavaScript属性 ③表单相关属性 ④iframe标签属性 ⑤链接相关属性 ⑥其他属性全局属性全局属性包括data-* 、hidden、spellcheck、tabindex、contenteditable、contextmenu、d

2017-10-04 12:17:57 1740

原创 使用Markdown实现页内跳转

本人由于使用Markdown写文章比较多,自然遇到了不少问题,其中一个就是页面内部的跳转。 关于页内跳转的方法有很多,网上一搜也一大把,但是效果都不是很理想——往往会跳转出新的页面或者是重新加载页面。由于Markdown支持HTML代码,这次突发奇想使用a标签+指定跳转方式的方法,从而实现了页内跳转。使用方法<a href="#1" target="_self">标题1</><a href="#

2017-10-04 11:35:48 1951

原创 HTML5--常用新元素

如果我问你,HTML5的新增加的元素有哪些?不少人可能脱口而出section、article、header……等等。但是如果要问你HTML5增加新的元素,同时废弃了很多元素的原因是什么,我觉得大多数人可能都没思考过这个问题。标签语义化标签语义化就是上个问题的答案。HTML5一个最主要的变化是基本信念的变化:将元素的语义与元素对其内容呈现结果的影响分开。 HTML元素负责文档内容的结构和含义,CS

2017-09-27 16:03:39 825

原创 HTML5--前言与注意事项

收集资料复习(学习/预习)一下html5,希望能自己早日找到实习,希望各位前端程序员也能找到好工作٩(๑❛ᴗ❛๑)۶。HTML5概述在之前开发中,我或多或少都使用过HTML5的新特性,结合网上的资料,我专门来整合一下相关的内容。 HTML5主要分为以下几个部分: 1. 常用的新元素 2. 常见的新属性 3. CSS3 4. 画布 5. 多媒体技术 6. 本地存储 7.

2017-09-26 20:49:20 771

原创 DOM(二)——节点

在上篇文章这DOM(一)——简介中我们介绍了Node的所有节点类型,这篇文章我将针对其中比较重要的节点进行介绍。Node类型nodeType和nodeName每一个节点都有一个nodeType和nodeName属性,用于表明节点的类型。节点类型共有12种。ELEMENT_NODE =1 ATTRIBUTE_NODE =2 TEXT_NODE =3 CDATA_SECTION_NODE =4

2017-09-20 17:18:30 416

原创 DOM(一)——简介

最近快要去找实习了,准备复习一波DOM,同时整理一下资料,希望对大家也有帮助。DOM是什么?document object model又称为DOM,意思是文档模型。我们编写的HTML都是通过构造一颗树的层次结构(DOM Tree),然后通过呈现树(Render Tree)使之可视化的。 浏览器在加载HTML文档时,会先解析这一层次结构并创建一颗节点对象树,从而模拟这些标记文本的封装方式。

2017-09-19 15:58:23 632

原创 JavaScript实现链表

时隔一个多月,终于又开始写关于js的文章啦,本次我写的是如何使用JavaScript实现链表。 在这我就不再介绍链表的定义了,直接开始内容部分。 老规矩,先看看链表的方法。定义链表的方法在尾部添加新的项 方法:append() 语法:LinkedList.append(element1,element2…elementX) 参数:必需。element不能为空。

2017-09-15 14:47:50 486

原创 字体垂直居中的几种实现方法

这几天遇到了好多关于字体垂直居中的问题,整理一下,希望对大家也有帮助。vertical-align:middle vertical-align 用来指定行内元素(inline)和行内块级元素(inline-block)或表格单元格(table-cell)元素的垂直对齐方式。inline和inline-block对于行内元素和行内块级元素,vertical-align对middle的处理方式都是

2017-09-13 18:00:03 40457

原创 如何控制html中字符字体的宽度?

在盒子模型(二)——line box中我曾经说过,字符字体是没办法直接设置width的。 不过我们还有其他方法来控制字符字体的宽度。单个字符字体的宽度 单个字符字体的宽度只受font-size属性影响。font-size<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>单个字符字体的宽度

2017-09-09 00:00:38 17119

原创 为什么img标签高度显示不正常?

在一个div里面添加了一个img标签,img大小为80*80px,外边距为20px。但是img标签的位置显示的却不正确。浏览器对替换元素(行内块级元素)有一个默认3px或者4px空白,这个空白是造成img标签高度异常的原因。

2017-08-31 18:28:34 3925

空空如也

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

TA关注的人

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