一,背景 node js 一般打印日志使用console.log ,如果现有项目希望增加打印日志,那么我们可以重载打印日志函数,我们直接用现有的功能模块 log-timestamp 二,使用 require('log-timestamp'); 导入即可,默认时间戳是用的国际时间,你可以传入你要写的时间戳。 三,原理 重载函数 类似console.log = function(...){ console.old_log(...)}
一,背景 node js 一般打印日志使用console.log ,如果现有项目希望增加打印日志,那么我们可以重载打印日志函数,我们直接用现有的功能模块 log-timestamp 二,使用 require('log-timestamp'); 导入即可,默认时间戳是用的国际时间,你可以传入你要写的时间戳。 三,原理 重载函数 类似console.log = function(...){ console.old_log(...)}
背景 这个工具我很早之前就想开发了,陆陆续续开发一段事件时间,基本功能开发完全了 目的 软件快速通过关键词或者关键词的缩写打开对应的网址,因为自己常常会开一些web,进行访问。 这个软件有点借鉴utools,这个工具可以对接任何web网页,加入js注入。本软件只是练手electron 技术而已,后续慢慢补充各种插件和web,实现自己软件自给自足。提高自己快速编码能力和产品的驾驭能力。 用途 快速访问网址,不用自己记录各种网址 可以常驻后台,避免浏览器关闭,导致网页关闭 自带js注入框架,方便自己扩展各种网页功能,满…
如题,这个官方问题里面已经写了解决方案,我只是记录一下方便整理 我在 Electron 中无法使用 jQuery、RequireJS、Meteor、AngularJS。 因为 Electron 在运行环境中引入了 Node.js,所以在 DOM 中有一些额外的变量,比如 module、exports 和 require。 这导致 了许多库不能正常运行,因为它们也需要将同名的变量加入运行环境中。 我们可以通过禁用 Node.js 来解决这个问题,在Electron里用如下的方式: 假如你…
背景 自己之前用electron-builder 在windows打包,默认安装到user local 目录,自己也对elecron-builder不熟悉,对inno setup打包比较熟悉,同时inno setup 可以任意目录,各种高级功能 过程 electron-builer 在windows打包 找到生成目录里面的win-unpacked文件夹 inno setup 直接打包即可(直接可视化操作,你也可以修改脚本) 总结 这里用electron-builder 主要打包成asar而已,其实也可以完全用asa…
一,背景 因为最近项目需要迁移数据库,于是我问了一下后台开发导入数据要多久?结果他说要一个小时,我觉得时间太长了,于是我搜索了一下有关快速插入sql的知识,从而用Node js 写这个小工具,方便快速导入sql。 二,原理 因为我们导出Sql数据是一行一条插入语句,执行sql时候按照每行执行一次,这样子导致写入特别多,大量消耗在网络传输中,于是我们只要把多行插入语句整合一条语句,但这里要知道mysql的一条sql最大长度是1M,所以我合并成一条时候需要注意长度,我用Node js写的工具已经处理这个问题。 三,代码…
背景 新手使用electron 会遇遇到自己的html页面加载的Js无法使用node js功能,Preload加载干什么,上下文隔离的问题,这个对于我使用electron确实造成困扰。 关键词 nodeIntegration preload contextIsolation 详解 nodeIntegration 控制渲染进程加载页面是否能够调用node js功能,高版本默认关闭,意思就是加载的html是无法使用node js代码,如果你想用就必须设置 nodeIntegration 为 true。 preload …
背景 今天自己给快速打开增加自动启动,但发现开机启动后 无法正常运行。 排查 通过开发者模式发现路径到C盘系统的目录,我原来用的process.cwd(),返回进程的当前工作目录。后面我换成process.execPath 然后通过path 模块获取文件夹路径,这样子获取一定是安装目录执行的exe。同时不要__dirname 这个代表源码目录,因为打包了,所以目录对不上。
背景 node js 自己的demo ,直接把node js 回调传给c++ 然后直接回调,这样子是没有问题,但我们需要一个长期的回调,node js没有说明,网上貌似也没有对应的文档,我找了好久也没有找到。后面自己翻看node js 官网文档API ,一个个看,找到一个能用的api。 解决方法:napi_create_reference 回调对象,如果你直接保存,你下次回调的时候发现会发生错误,我分析错误信息是对象已经不能用,我看了官网文档,node js 自己管理申明周期,所以我猜测声明周期的问题,于是找他们引…