npm包发布及其CDN加速
发布npm包在要发布包的对应目录,右键使用Vscode打开,依次执行如下代码 npm init(初始化和git init差不多)1234567891011121314151617181920212223name: (mtmap)version: (1.0.0)description: xxxxxentry point: (/dist/gaia.demo.map.js)test command:git repository:keywords:author: allanhaolicense: (ISC) MITAbout to write to E:\github\mtmap\package.json:{ "name": "mtmap", "version": "0.1.0", "description": "xxxxx", "main": "/dist/gaia.demo.map.js", "s ...
hexo圆角修改
F12调试工具定位要修改的样式也可以查看别人的css是怎么改的,然后使用工具对比差异,找到差异,修改。 Vscode查找要修改的值并调试注意图片中的代码不用加”;”号
逆向开发法网页速成!& 基于api的前后端分离思考
本文仅供学习使用 查看/下载源代码速成网页网页由html,js,css三大主要部分构成;绝大部分js,css(文本类型),图片这些静态资源,都存放在CDN;CDN供应商的服务器放在世界各个角落,可将代码,图片等静态资源,转换成外链,形成源服务器的映射;方法1:话不多说直接F12(几乎所有资源都可看到)方法2: 右键另存为或者浏览器自带的另存为方式另存为后三种元素都可以保存下来,js,css会被存放在同一个文件中,且该文件名应于html文件名相同(中文文件名可能会导致编辑器中乱码);有些网站使用打包工具生成,他的代码(非常规)就没有参考价值;及其个别经过了混淆也无参考价值;下载完用编辑器如VScode编辑你想改的代码即可利用查找更快哦!基于api的前后端分离思考将api的代码嵌入到静态页面中,用户在访问时就能通过第三方云的api服务获取特定的动态数据(api对应一个apikey来识别特定的库),使用第三方云可以实现前后端分离。
JS下修改指定id和class的对应元素值 --以hexo随机indeximg为例
前言从来没学过前端,以后也不打算学,目前的前端生态已经相当成熟了,写个网页和word技术含量差不多,毕竟网页也只是描述语言而已。 巧用F12会用F12查看你要修改的元素的id和class非常重要F12也能查看源码 创建JS文件定位id,判断classhexo 随机 indeximg,整体.js文件的代码:12345678910111213var bannerimg =[ "url(https://ae01.alicdn.com/kf/H21b5f6b8496141a1979a33666e1074d9x.jpg)", "url(https://picsum.photos/id/767/3069/2048)", "url(https://picsum.photos/id/800/4663/3109)", "url(https://picsum.photos/id/459/2310/1534)", "url(https://picsum.photos/id/458/5184/3456)&quo ...
不定积分重要方法总结--区间再现,区间平移,华氏公式
区间再现,区间平移,华氏公式,是不定积分的重要公式没有之一注意他们的使用条件: 区间再现 对任何函数成立 使用区间再现前后函数上下限不变! 这是区别于换元法的最大意义之一!区间平移区间平移指的是以T为单位平移,仅仅对整体是周期函数有效。如果整体不是周期函数,而子函数存在周期函数,可以用换元法进行模拟区间平移来判断他们的关系。(有点像仿射变换)华氏公式(点火公式)点火公式仅仅是0-π/2的情况,其他情况处理见 张宇基础30 P130页。
单serverless服务分布式部署的思考--以githubPage为例
前言自从花了几天用hexo在githubPage上部署了博客,虽然技术含量很低,但我感觉很有意思。githubPage作为一种Serverless服务之一,我认为功能不仅仅只能是部署一个博客!事实上也是如此,经过云电脑的验证,githubPage可以整合任意的静态界面,然后通过URL引用的方式互相跳转。这里的引用可以是: githubpage下的子目录相对引用例如xxx.github.io./文件夹 也可以在同一个项目下,使用其本身语法进行相对引用(比如hexo项目下生成的博客,页面内互相跳转也有自己的语法)绝对引用输入完整的URL那就更不用多说了。单serverless服务分布式部署以githubPage为例,可以添加子文件夹,然后将你想要部署的不同类型静态页面添加到子文件夹,用上面的引用方法跳转。已知BUGhexo的deloy服务有可能会把不同部署的子文件夹覆盖掉(hexo deploy好像是一整个覆盖)不能使用git pull origin main --allow-unrelated-histories拉取,使用--allow-unrelated-histories会导致BU ...
PLC顺控并行指令伪多线程
以东西南北红绿灯为例其实比较简单,不多说了,就是使用PLC S7-200的顺控指令并行分支,一个分支执行东西红绿灯,另一个执行南北,最后汇总转移。为什么说是伪多线程?因为最后需要汇总转移,两个分支在最后具有一定耦合性,并不能说完全相互独立。 控制大意如下 查看详细图片 红绿灯闪烁部分可以看看1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251 ...
NPM-package踩坑记录和一次解码记录
NPM-package踩坑记录最近用node.js下的包管理工具下载了一个插件,想直接进Node_module目录改.js和css目录改代码,但是都没有效果。是因为修改的是element的源码,而你引用的是它编译打包之后的。所以修改无效。正确的方法是,进入插件的开源仓库fork源码后修改,使用npm重新编译。 方法1如下;(转载)如果你不想直接使用我的魔改,你想要修改某些东西,例如卡片透明度,那么你不必修改压缩过的 css,而是应该到 static-butterfly 仓库下载源代码,按照./src/css/config.less 中的文件进行自定义配置。 12npm inpm run build 修改你想要自定义的配置项,只需要修改配置中的对应字段即可(上面代码可能不全,以实际文件为准)。然后在根目录下运行如下命令进行构建即可。点击查看https://www.antmoe.com/posts/a811d614/ 方法2如下:(转载)点击查看https://segmentfault.com/q/1010000023232103 解码记录在某大佬软件源码下看到了这个12345/** \u ...
CPP构造函数调用规则
本人将持续在这里更新C++学习记录 本次将学习CPP构造函数调用规则 看到这里啦 前一节也是重点!//创建一个类,C++编译器会给每个类添加3个构造函数//默认构造 析构函数 拷贝构造(值拷贝)1234567891011121314151617181920212223242526272829303132class Person{public: //默认构造 Person() { cout << "Person无参数构造函数" << endl; } //有参数构造 Person(int a) { age = a; cout << "Person有参数构造函数" << endl; } //拷贝构造函数 Person(const Person& p) { age = p.age; cout << "Person拷贝构造函数" << endl; } ~Person() ...
数控机床切割椭圆NC代码
写在前面之前选修课跟着学校的郑教授学过几天机制的专业课-数控机床与工业机器人现在想起来很多细枝末节的东西都已经忘的差不多了 但是一套操作流程还是有印象的例如打开仿真软件-选择机床-先让刀具回到原点,导入NC代码-启动 下面就放两段NC代码的示例吧~ 代码示例切割椭圆代码示例12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455%O0009#1=35#2=25#5=-#1#6=300#7=0G91G28Z0M06T01H01S500M03G64G90G54G00[#1+20.]Y60.G43Z50.Z5.G01Z-3.F300G41G01X[#1]D01F[#6]Y0.while[#3GE#7]DO1#3=#1#4=-[#2*#2]*SQRT[1-#3*#3/#1/#1]G01X[#3]Y[#4]F[#6]#3=#3-0.1END1while[#3GE#5]DO2#3=#7#4=-[#2 ...
C51简单的开源示例
前言 既然这几天在玩github那么就把之前做过的一些简单C51示例放在仓库里了 没有一个难的项目,所以我也不费口舌了 如果有兴趣开源地址都在这里
CPP对象的初始化清理
构造函数进行初始化 构造函数 没有返回值 不用写void 函数名 与类名相同 构造函数可以有参数可以发生重载 创建对象会自动调用一次且仅有一次(初始化)构造函数1234567891011121314class Person{public: Person() { cout << "Person" << endl; }}; 初始化会执行 cout << "Person" << endl;一次 1234567891011void test01(){ Person p; //执行完自动调用析构函数}int main(){ test01();} 析构函数 会进行清理操作 在函数名前加~即可 无参数 不重载 对象销毁前自动调用且只有一次123456789101112131415161718class Person{public: Person() { cout << "Pe ...
PLC8路抢答器设计思路
开发环境&方案设计S7-200实验箱,其中自带抢答器部分仅有四路可用 但是可以接到机械臂的IO上实现功能,同时还能用触摸屏控制。 要注意使用触摸屏控制照样需要关联输入输出线圈 如果想让本地数码管显示需要让对应的输入的输入输出线圈得电 还是需要连线。 如果用触摸屏推荐使用屏幕显示数码管关联变量 接线图如下所示:其中Q0.1-Q0.6对应8位数码管的7段(除去小数点的那一段)Q1.0是提示灯 I0.0是启动按钮 I0.1是复位按钮M20.2-M21.1是触摸屏控制8路的的驱动M0.1-M0.7是有线连接的8路驱动 程序讲解 触摸屏部分触摸屏可以直接通过触摸屏上的按钮操控,而无需接输入I0.0-I1.1,原理是触摸屏可以用以太网和PC在网段下下载图形化程序,而在图形化IDE(WinCC中)按钮可以直接与通用辅助寄存器关联起来,利用已写好的梯形图对PLC进行控制实现,也就是用软件资源扩展硬件,这是重要的编程思想!😀 I0.0-I0.1变量关联在WINCC start/restart ...
云边端背景下的多传感器监测系统可行性分析
引言什么是云-边-端?其实没有那么高端 云-24小时服务器 边-高算力平台(整合多种算法) 端-在本文中特指传感器终端 浅谈实现方案以下为流程图: 查看流程图 流程图仅提供一种实现思路,2022年了相关技术已经相当成熟 简单的开源Demo也很多不再赘述。以微信云平台为例登陆开发者平台,填入物联网云平台 API 即可小程序接入 API 后便可以从物联网云获取传感器信息这里的传感器信息再经过高算力计算机处理,按照特定的算法数据过滤和整合,抵达用户。如果想传递图片和视频 一般摄像头模块固件文档有使用方法如果没有 也可以接入云图床和云视频平台 产生相应的外链并解析即可获取视频和图片信息。直接传输视频和图片可能很难但使用外链的方式在程序中获取传感器终端的相应信息却很简单。 传感器模块与边缘计算任意传感器放在用户要监控的各个部位,就可以获取到相应的数据 比如光电传感器监测亮度,超声波测速,还有各种位移,加速度传感器等 我们知道 ...
CPP封装对象特性学习记录
本人将持续在这里更新C++学习记录 本次将学习类的嵌套和封装—以点和圆的关系为例 看到这里啦 圆类中再添加点类首先新建点类和圆类 然后再圆类中添加点类此处已进行过封装 封装成cricle.h注意引用自定义头文件需要加"",学会1个VS2022快捷键TAB+shift为向左缩进。圆类头文件123456789101112131415161718class Circle{public: //设置x void setr(int r1); int getr(); void setcenter(point center1); point getcenter();private: int r; point center; //圆类中添加点类};点类头文件12345678910111213141516171819202122#pragma once#include <iostream>using namespace std;class point{public: //设置x void setx(int x1); void sety( ...
CPP学习记录(1/5)对象
本人将持续在这里更新C++学习记录目前学到对象 对象私有化1234567891011121314151617181920212223242526272829303132333435363738394041424344class Person{public: //设置姓名 void setName(string wname) { name = wname; } string getname() { return name; } int getage() { int age = 0; return age; } void setAge(int age) { if (age > 180 || age < 0) { cout << "你这个老妖精" << endl; return; } age = age; } void setyp(string yp1) { yp = yp1; ...
现场总线PSE通讯-OPC远控-XT断路器总结
写在前面本来想用markdown写的但是用word写完了,加上我很忙,又什么都学的不精,也不想在花时间在打字上了。嘿嘿 就在博客上灌个水吧。😂 当然还是开源的我也会把word文档放出来 如果有兴趣源码文档都在这里 不说了睡了!
C++通讯录编程学习记录
项目说明VS2022 这个其实是个简单的C语言复习项目主要在Main中展现显示函数,然后赋予局部变量右值以存按键值:12showmenu();cin >> select; 然后用 while+switch+子函数 选择功能 输入0用return 0和system(“pause”);退出。12345678910111213141516171819202122232425262728293031323334353637switch (select) { case 1: addperson(&book); break; case 2: showperson(&book); break; case 3: deleteperson(&book); break; case 4: find(&book); break; case 5: changep(&book); break; case 6: cleanall(&book); break; case ...
GIT指令管理代码简单使用方法
官方步骤…or create a new repository on the command line1234567echo "# apitj" >> README.mdgit initgit add README.mdgit commit -m "first commit"git branch -M maingit remote add origin https://github.com/hgez6/apitj.gitgit push -u origin main…or push an existing repository from the command line123git remote add origin https://github.com/hgez6/apitj.gitgit branch -M maingit push -u origin main…or import code from another repository You can initialize this repository with code f ...
TCP局域网内点对点控制方案
原理说明  使用本地TCP服务器直接可以接受发送char[]型数据而无需处理。  设置C52与无线通讯模块为相同的波特率进行有线串口通讯连接。123456789101112131415161718192021void Uart_Init() //4800bps@12.000MHz //误差太大用4800{ PCON |= 0x80; //使能波特率倍速位SMOD SCON = 0x50; //8位数据,可变波特率// AUXR &= 0xBF; //定时器1时钟为Fosc/12,即12T// AUXR &= 0xFE; //串口1选择定时器1为波特率发生器 TMOD &= 0x0F; //清除定时器1模式位 TMOD |= 0x21; //设定定时器1为8位自动重装方式 定时器T0为16位定时模式(低八位) TL1 = 0xF3; //设定定时初值 TH1 = 0xF3; //设定定时器重装值 ET1 = 0; //禁止定时器1中断 TR1 = 1; //启动定时器1 ...
一种轻量化云端闭环设备间协同算法设计
摘要  本文将介绍云端链式闭环协同算法,该算法以TCP云/MQTT3.1.1协议的云端主题耦合思想为核心,建立在物联网云平台应用层的基础上,具有开关功能,是一种面向低算力场景下的设备间协同算法。云端耦合特性使该算法具有跨平台能力,该算法下又包含n重功能位校验算法与数据类型转换算法,能实现复杂指令轻量化自定义传输,利用异步通讯结合闭环反馈的思想能保证通讯数据可信情况下减少云端和本地双向资源占用,并使用软多线程保证通讯的稳定性。为提升该算法的应用范围及稳定性,本文还将探讨如何将传统设备接入本算法以及使用本地TCP Sever作为备用方案。关键词: 设备协同算法;轻量化;异步闭环;传统设备接入及本地TCP Sever;跨平台 引言  无线通讯技术的发展使“万物互联”成为可能,以华为的Openharmony开源物联网系统为代表,已经为支持运行操作系统的较高算力芯片,提供设备间协同解决方案。但是目前面向低算力低内存场景下的跨平台设备间协同解决方案依然很少,物联网云平台失效情况下的备用解决方案较少,并且如何将传统不搭载无线通讯模块的设备接入物联网待需解决。因 ...