自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 问答 (7)
  • 收藏
  • 关注

原创 Python处理视频流后显示造成的卡顿问题分析

假设处理每帧视频耗时最多500毫秒,则视为每帧处理耗时500毫秒,那么视频输出必定至少延迟500毫秒,:同一线程进行处理,30帧数据耗时30*500=15000毫秒,即1秒内容需要15秒进行输出,造成卡顿。假设帧率30,即每秒显示30帧,每帧间隔1/30=0.0333333…理想状态下,线程数量 大于 单次处理耗时除以每帧间隔。多线程并行处理耗时操作。

2024-02-26 11:03:38 383

原创 nestjs+typeorm+mysql基本使用学习

数据类型一般会根据实体属性定义的类型进行推断,如:number将被转换为integer,string将转换为varchar,boolean转换为bool等。参数2,category=>category.xxx,用以指定反向关系,当前实体存储在目标实体的xxx属性。模型字段装饰器:@ApiProperty({ description: ‘字段描述’ }),字段必填。:实体键的对应关系,仅在关系的一侧使用,关系拥有者使用,关系的拥有方包含数据库中具有外键的列。装饰器装饰的实体属性。装饰器装饰的实体属性。

2023-07-27 09:28:46 1451

原创 pkg打包nestjs项目问题点整理

因为pkg打包生成的exe运行后,会给__dirname等路径前加上一个临时目录:/snapshot/__dirname,而运行目录process.cwd()不会,所以拼接使用process.cwd();xdg-open没有找到使用的地方,没管它也没报错;

2023-06-21 10:11:25 1202 4

原创 基于git分支初始化新项目分支,两个项目互相独立

【代码】基于git分支初始化新项目分支,两个项目互相独立。

2023-05-10 14:04:35 254

原创 ts-node运行node+ts脚本报错:Error: Cannot find module ‘@model‘

在node环境下,使用ts-node运行ts脚本,找不到定义了别名的路径,即在tsconfig.json里面定义的paths无效。

2023-02-03 09:10:02 1385

原创 luckysheet渲染数据及二维码后进行打印

【代码】luckysheet渲染数据及二维码后进行打印。

2022-11-10 10:37:44 1253 10

原创 angular自定义异步验证器

angular自定义异步验证器

2022-04-20 15:23:06 923

原创 angular库的原理图实战

前置:安装原理图相关包初始化库和原理图配置ng new my-project --create-application=falseng g library hello-tea在库的根目录创建文件夹schematics在文件夹schematics下创建文件夹ng-add和文件collection.json编辑collection.json文件,初始写入以下内容// project/hello-tea/schematics/collection.json{ "$schema": "../

2022-04-01 10:37:52 1488

原创 创建指定版本的angular项目,不需要重新安装对应版本

npm init,生成package.json文件,不需要特殊输入,基本上一路回车打开package.json文件,添加属性dependencies,并在其中加上指定的@angular/cli版本号在package.json同目录下,运行npm install,最终目录下新增node_modules文件夹和package-lock.json文件在该目录下,运行指令,就可以生成对应版本的angular项目了,建议加上–skipIntall,跳过安装包,这样项目体积小,把项目移动到其..

2022-03-19 15:21:34 2316

原创 ionic打包APP

配置https://www.jianshu.com/p/be517d9a05671.安装配置JDK2.安装配置SDK,可以通过Android studio安装3.安装配置gradle4.安装配置nodejs,ionic,Cordovanpm install @ionic/cli cordova -g5.打包apkionic cordova platform add [email protected] cordova build android --prod报错与解决方法报错1:Co

2021-02-19 09:57:17 295

原创 angular引用swiper插件绘制中间大两边依次缩小的轮播图

初步使用安装前人栽树后人乘凉,已经有大佬们封装好了。npm install swipernpm install @types/swiper使用在需要应用的模块中引入SwiperModule。在需要应用的组件中,在ts文件中引入需要的对象类型,如Swiper或SwiperComponent,在html文件中引入<swiper>标签。在style.css中引入插件需要的css:@import '../node_modules/swiper/swiper-bundle.css';

2021-01-05 14:40:22 1062

原创 angular自定义表单控件,解决错误No value accessor for form control with name: ‘xxx‘

目标:自定义表单控件(FormControl),增加灵活性和复用性。场景:自定义组件作为表单控件,添加formControlName获取值。报错:No value accessor for form control with name: ‘xxx’。原因:将name绑定到了一个没有对应’value’的地方,或者说是找不到获取对应的’value’的通道。解决方法1:添加ngDefaultControl元素ngDefaultControl元素是基于DefaultValueAccessor指令的。.

2020-12-26 15:47:46 5095

原创 js方法call()和apply()和bind()学习

相似之处都是用来改变函数的this对象的指向的。第一个参数都是this要指向的对象。都可以利用后续参数传参。区别之处调用方法,call和apply改变函数指向后直接调用函数,bind返回的是一个函数,需要再调用传参方式,call传参一一对应,分别单独传参;apply传参为整一个数组(元素为传入的参数);bind传参也是一一对应,也可以在bind方法的时候不传参,在调用返回的函数中传参。例子1:var xw = { name : "小王", gender

2020-12-03 15:25:15 138

原创 echarts伪3d柱状图绘制(象形柱图)

伪3d柱状图效果主要是通过对柱体顶部、底部放置图形(菱形),对柱体设置渐变色进行绘制,从而产生视觉上的3d效果。象形柱图是可以设置各种具象图形元素(如图片、SVG PathData 等)的柱状图。往往用在信息图中。用于有至少一个类目轴或时间轴的直角坐标系上。数据来源dataSource = [ {DateTimeString:'一月', GoodRate: xxx}, ...... {DateTimeString:'十二月', GoodRate: xxx},];绘制效果数据处理..

2020-12-01 13:30:11 2221 1

原创 echarts根据多个dataset设置多折线图

数据源:dataSource = [{ supplierName: 'a', datas: [ {time: '2020/1/1 0:00:00', GoodRate: 50, NGRate: 50}, {time: '2020/2/1 0:00:00', GoodRate: 60, NGRate: 40}, ...... ]},{ supplierName: 'b', datas: [ {time: '2020/1/1 0:00:00', GoodRate: 50,

2020-11-23 17:08:35 4286

原创 es6之async函数

含义async函数是Generator函数的语法糖。写法async函数就是将Generator函数的星号(*)替换成async,将yield替换成await。依次读取两个文件,Generator函数写法:const fs = require('fs');const readFile = function (fileName) { return new Promise(function (resolve, reject) { fs.readFile(fileName, function(e

2020-10-13 16:05:07 174

原创 海康威视摄像头web二次开发(angular)

海康威视官网有提供二次开发的web开发包,主要由js,html组成,但是开发包更新迭代太快了,甲方的摄像头还是老版本,幸好甲方提供了它们的开发包(内涵demo,doc)。测试环境在web包里面里面有demo>cn文件夹,内含js、html、css文件,直接点击html文件,在浏览器中打开,可以直接使用,输入ip,port,username,password,点击登录,点击预览,可以查看对应的监控视频,也可以在操作信息里查看操作步骤成功与否。可以成功显示,说明浏览器环境,摄像头信息及硬件情况都.

2020-09-11 17:19:03 4337 7

原创 es6之class的基本语法

简介生成实例对象的传统方法是通过构造函数。

2020-08-07 16:25:12 183

原创 angular发布npm包

1.注册npm账号方法一:登录npm官网注册;方法二:终端命令行注册npm adduser;2.终端登录npm账号npm login3.终端发布npm包npm publish4.删除发布的npm包npm unpublish [email protected] --force5.发布可能遇到的错误错误一:401 Unauthorized,一般是没有登录,或者登录源与发包目标源不一样导致的。解决方...

2020-07-11 14:02:40 574

原创 js深拷贝的理解与方法

来源于某次面试,很多时候我们都有这种感觉,原理我好像懂诶,但是要我写的话我能不能百度一下【狗头】。js的深拷贝和浅拷贝的区别一般来说,基本数据类型的复制,不存在深浅拷贝之分,复制的结果是创建一个完全独立于原值的新值,可以认为基本数据类型的拷贝都是深拷贝。需要仔细研究的是引用数据类型://a为引用类型,以下复制为浅拷贝var a = {x:1,y:2};var b = a;a被赋值,从a向b赋值,此时复制的是保存在栈内存中的值。引用类型的值是保存在内存中的对象,但不是实际的对象,而是对象的引用,

2020-07-03 14:19:32 163

原创 angular使用问题记录(更新中)

form表单的formcontrol项指定默认值解决方案:同时使用formControlName属性和ngModel属性。ViewChild获取html节点内容,明明存在却是undefined可能原因:在程序初始化完成后,就会尝试获取ViewChild所标明的节点,但该节点不一定存在(如使用ngIf控制),此时需要把变量对象的static属性设置为false,才能动态的获取内容,否则只能得到undefined。...

2020-06-19 15:12:12 334

原创 es6之Promise是什么

Promise的含义Promise是一个容器,内部保存着某个未来才会结束的事件(通常是一个异步操作)的结果。Promise也是一个对象,可以通过这个对象获取异步操作的消息。Promise的特点:对象的状态不受外部影响,只有异步操作的结果才能决定状态。一共有三种状态:pending(进行中)、fulfilled(成功的)和rejected(失败的)。对象的状态发生改变后,不会再变化,并且随时可以得到这个结果。对象的状态改变只有两种情况:pending=》fulfilled,pending=》reje

2020-06-03 14:33:58 315

原创 es6之Generator函数学习

关键词:Generator,yield ,next,return理解Generator函数:从语法上理解,Generator函数是一个状态机,里面包含着多种内部状态;从返回上理解,Generator函数返回一个遍历器对象,因此它也是一个遍历器对象生成函数,返回的遍历器对象可以依次遍历函数内部的状态。Generator函数的特征:1. function关键字和函数名之间有一个星号。2. 函数体内部使用yield(产出)表达式,定义不同的内部状态。一般形式如下:function* helloworld()

2020-05-21 13:54:22 140

原创 JavaScript变量(基本类型和引用类型)、执行环境及作用域和内存问题

基本类型和引用类型的值两种不同的数据类型:基本类型值和引用类型值。基本类型值指的是简单的数据段,而引用类型值指那些可能有多个值构成的对象。基本类型5种基本数据类型:Undefined、Null、Boolean、Number和String,这5种数据类型是按值访问,因为可以操作保存在变量中的实际的值。引用类型引用类型的值是保存在内存中的对象。JavaScript不允许直接访问内存中的位置,也就是说不能直接操作对象的内存空间。在操作对象时,实际上是在操作对象的引用而不是实际的对象。为此,引用类型的值

2020-05-11 13:55:28 156

原创 echarts的模板变量使用方法(name、value、a、b、c、d、e)

字符串模板模板变量有{a},{b},{c},{d},{e},分别表示系列名,数据名,数据值等。在trigger为‘axis’的时候,会有多个系列的数据,此时可以通过{a0},{a1},{a2}这种后面加索引的方式表示系列的索引。不同图表类型下的{a},{b},{c},{d}含义不一样。其中变量{a},{b},{c},{d}在不同图表类型下代表数据含义为:折现(区域)图、柱状(条形)图、K...

2020-05-07 15:29:29 6438

原创 git版本管理、修改与删除文件

版本回退查看提交日志显示最近到最远的提交信息:git log。显示简易提交信息:git log --pretty=online。选择回退的版本HEAD是当前版本,HEAD^是上一个版本,HEAD^^是上上一个版本,HEAD~100是上100个版本。回退到上一个版本的命令:git reset --hard HEAD^。取消回退,恢复版本如果版本回退以后后悔了,可以回到之前的版本,但...

2020-04-29 11:22:37 200

原创 git创建与合并分支,解决合并冲突

创建与合并分支创建dev分支git branch dev切换dev分支git checkout devgit switch dev(新)创建切换二合一git checkout -b devgit switch -c dev(新)查看当前分支git branch切换master分支git checkout mastergit switch master(新)把dev分支...

2020-04-29 10:27:32 148

原创 nrm的使用(安装、配置、查看、切换、增加、删除、测试)

1.nrmnrm(npm registry manager)是npm的镜像管理工具,有时候国外的资源太慢,使用这个就可以快速地在npm源间切换。2.安装nrm在命令行执行命令,npm install -g nrm,全局安装nrm。3.使用执行命令nrm ls查看可选的源。其中带*号的是当前使用的源,下图表明当前源为rh。5.切换如果要切换到taobao源,执行命令nrm use t...

2020-04-28 16:34:51 22464

原创 Angular与Echarts(动态加载Echarts)

动态加载Echarts为初始化事件绑定方法:chartInit事件是echarts图标初始化时调用的方法,其中的event为生产的图表对象。在ts文件中绑定图表对象。chartOpt: Echarts;onChartInit(event) { this.chartOpt = event;}动态加载。动态加载的方法还有很多,待更新…...

2020-04-11 10:11:56 1105

原创 Angular与Echarts(angular引入echarts)

angular引入echarts两种方法:1.angular提供的下载方法;2.引用第三方js文件。方法一:命令行下载。npm install echarts --savenpm install ngx-echarts --saveangular.json文件配置路径。在使用echarts的模块导入NgxEchartsModule(angular封装的echarts模块),...

2020-04-11 09:55:07 2465

原创 git创建本地仓库,关联远程仓库使用方法

先行步骤创建github账号创建github repository(仓库)安装git客户端为github账户设置SSH Key生成本地仓库通过git init操作创建本地仓库新建、修改内容git add xxx,git commit -m 'xxx’或者git commit -am 'xxx’提交关联远程仓库git remote add origin git@gith...

2020-03-31 11:18:06 135

原创 angular的路由复用策略RouteReuseStrategy

应用场景项目打开多个tab页面,在页面之间进行切换,应用路由复用策略:不用刷新页面,可以使用路由快照,保留了页面之前写入的内容。理解说明在angular官方文档中介绍:一种重新使用激活的路由的可自定义的方法。abstract class RouteReuseStrategy { abstract shouldDetach(route: ActivatedRouteSnapshot): ...

2020-03-14 14:43:43 650

原创 window.open.postMessage用法

postMessage的基本用法postMessage可以解决跨域的传值问题,一般可以认为是父页面向子页面传递消息。发送数据(父页面):otherWindow.postMessage(message, targetOrigin, [transfer]);otherWindow:其他窗口的一个引用,可以是window.open(‘xxx’)、window.opener等等(目前只用过这两种...

2020-02-24 15:38:40 8313

原创 jquery自动滚动表格

想要做出日志表格自动滚动的样式,百度一下,发现大部分都是通过jQuery和定时器结合去实现的,记下来记下来~注意点1.主要通过$obj.css(),改变top(结合position)或者margin-top属性,产生滚动效果。2.滚动的操作对象主要是tr,因此thead的tr也有可能会受到影响,所以最好在html代码中设置2个table,1个放thead,1个放tbody,滚动操作第2个。...

2019-09-30 13:31:24 2519

原创 mxgraph集成至angular7

1.安装相关依赖cnpm installcnpm install mxgraphcnpm install -D lgleim/mxgraph-typings2.在angular.json文件中进行相关配置assets:[{“glob”:"**/*", “input”:“node_modules/mxgraph/javascript/src”, “output”: “./mxgraph...

2019-06-17 14:25:07 1118

原创 利用pyinstaller模块打包python项目及其配置生成exe文件

说明利用pyinstaller模块可以打包py文件成一个文件夹(内含exe文件)或一个exe文件。打包结果包括代码逻辑及其配置,在其他服务器点击即可运行。操作下载pyinstaller模块在终端(需有python环境)到达要打包的py文件目录下输入:pyinstaller -F myfile.py在同一目录下产生了一个dist文件,打包结果在其中输入参数的含义:-F 表示生成单个...

2019-05-30 14:12:28 387

空空如也

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

TA关注的人

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