知识点备忘

查缺补漏,小知识点整理

一、NodeJS

1、NVM 用法

NVM:NodeJS 版本管理工具

1.1、查看安装的 Node 版本列表

nvm ls # 或 nvm list

1.2、安装某一版本的 Node

nvm install 14
nvm install 14.4.0
nvm install node # 安装最新版
nvm install stable # 安装最新的稳定版

1.3、使用某一版本,版本号部分和上面的规则一致;

nvm use 14
nvm use 14.4.0
nvm use node # 使用最新版本

1.4、指定默认版本,版本号部分和上面的规则一致;

nvm alias default 14

2、NRM 用法

NRM:NodeJS 源管理工具

2.1、查看源列表

nrm ls

2.2、添加源

nrm add 源名称 源地址 

2.3、删除源

nrm del 源名称

2.4、测试源访问速度

nrm test # 测试全部源的速度
nrm test 源名称  # 测试某一源的速度

3、NPM

3.1、发布

npm publish

3.2、过期某个版本或过期某个版本之前的所有版本,以提醒用户更新到最新版本:

npm deprecate calendar-helper@0.0.1 "该版本已过期,请更新" // 过期 0.0.1 版本
npm deprecate calendar-helper@"<0.0.3" "该版本已过期,请更新"  // 过期小于 0.0.3 的版本

3.3、查看npm全局装的包

npm list -g --depth 0

4、升级依赖包

yarn upgrade-interactive --latest

空格可选中/取消依赖包,回车安装更新;

5、NPM查看更换源

npm config get registry # 查看源
npm config set registry https://registry.npm.taobao.org # 更换源

或者用 nrm 对源进行管理

6、查看npm安装的全局包

npm list -g --depth 0

二、MySql

1、连接 mysql 报错

node 连接 mysql 报 “ER_NOT_SUPPORTED_AUTH_MODE”,内容如下:

{"code":"ER_NOT_SUPPORTED_AUTH_MODE",
"sqlMessage":"Client does not support authentication protocol requested by server;
consider upgrading MySQL client"}

8.x 版本默认的密码认证是严格加密模式,修改为普通模式就可以了,安装的时候好像有个选项,如果直接选了普通模式,就不会有这个问题了;

报错的修改方法如下:

$ cd /usr/local/mysql/bin/
$ ./mysql -u root -p  # 进入mysql命令行
$ ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '这里是密码';

2、mysql 安全模式

mysql中,有一个安全模式,如果开启,执行删除、更新语句时,如果没有带where 条件或者 where 条件的字段不是主键,就会报下面的错

Error Code: 1175. You are using safe update mode and you tried to update a table without 
a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences
-> SQL Editor and reconnect.

解决方案就是把安全模式关闭,然后执行sql语句

SET SQL_SAFE_UPDATES = 0;
update main set url='';

SQL_SAFE_UPDATES 为 0 是关闭,1 是开启;

3、将数据从一个表导入另一个表

insert into table1 select * from table2
insert into table1 (column1, column2) select column1, column2 from table2

4、sql 语句转义引号

一般来说,sql语句里的字符串可以用单引号、双引号两种,如果字符串中的内容中包含了单引号、双引号,可以直接用 \ 来转义;

但最近在操作 sqlite 的时候,发现 \ 转义报错,从 SQLite官方faq文档 中找到了答案,需要用双写单引号的方式来转义单引号,第一个引号即为转义符;至于双引号,问题24明确说了,sqlite中字符串要用单引号,不能用双引号;

-- 查询table1中,title字段带单引号的记录
select * from table1 where title like '%\'%' -- sqlite中会报错
select * from table1 where title like '%''%' -- 单引号转义
select * from table1 where title like "%""%" -- 双引号转义

两个双引号也可以转义双引号,但该解决方案不适用sqlite,因为官方文档里明确说了字符串要用单引号,即使实际使用中双引号不报错(只是现在没遇到,某些平台或工具下某些版本可能会有问题);

双写单引号、双引号来转义字符串中的单引号、双引号的解决方案,在MySQL、SqlServer中也是通用的;

三、Git

1、查看当前仓库地址

git remote show origin 或
git remote -v

2、修改

修改远程仓库地址

git remote set-url origin http://xx.com/xx.git

设置、查看git用户名和密码,–global是设置全局,不带则只对当前项目起作用

git config --global user.name "username" // 设置/修改用户名
git config --global user.email "email" // 设置/修改邮箱

3、git tag

git tag tag-name    // 添加标签
git tag -d tag-name // 删除本地标签 
git push origin --delete tag tag-name // 删除远端标签
git push origin --tags // 本地所有tags同步到远端
git push --tags // 本地所有tags同步到远端

d 也可以写成 delete(两个横杠)

4、删除分支

git checkout other // 切换到其他分支
git branch -d branchName // 删除本地分支, -D 强制删除
git push origin -d branchName // 删除远端分支

5、提交代码

查看工作区状态

git status

将文件添加至缓存区

git add .
git add readme.md

. 表示全部,也可以换成具体的文件名;

git pull origin master:dev

拉取远端master分支并合并到本地dev分支,如果远端和本地分支名称一样,:后可以省略

git checkout . 
git checkout -- filepath

放弃所有本地修改 / filepath文件的修改

git remote show origin

获取仓库远端地址

6、本地代码和远端代码关联

// 初始化
git init
// 关联
git remote add origin https://xxx
// 本地代码提交
git add .
git commit -m “msg”
// 获取最新代码
git pull origin master
// 提交本地代码
git push --set-upstream origin master

四、其他

1、linux 常用命令

$ chmod -R 777 upload/ :修改upload文件夹下所有文件、文件夹权限为可读、可写、可执行;-R 所有文件、文件夹;
$ chmod 505 upload :修改文件/文件夹为可读、可执行权限,
$ ls -lh :查看文件/文件夹的权限

$ mv 文件名 文件名 :改名,将源文件名改为目标文件名
$ mv 文件名 目录名 :移动,将文件移动到目标目录
$ mv 目录名 目录名 :目标目录已存在,将源目录移动到目标目录;目标目录不存在则改名

$ rm -rf xx :删除文件或目录,直接删除无需确认;
    -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认;-r 将目录及以下之档案亦逐一删除;
$ rmdir NewFolder :删除文件夹

2、IOS 各版本市场占比

Apple官方统计:https://developer.apple.com/support/app-store/

3、MacOS 生成 HTTPS 证书

1. 安装mkcert

brew install mkcert

2. 生成根证书

mkcert -install

3. 签发本地证书 example.com 可换成其他自定义域名

mkcert example.com localhost 127.0.0.1

4、Webstorm 中 script 格式化顶头

eslint 语法检查,有时会要求 script 中的代码第一层级顶头,但Webstorm格式化代码默认是带一层缩进的。设置方式:

Preferences –> Editor — > HTML –> Other 中,有一个 “Do not indent children of”,在后边的文本框中加入script就可以了;

Windows系统中,“Preferences” 对应的菜单是 “Settings”。

5、SQLite Developer 日期字段值为 1899/12/30

某些版本下查看数据时,日期字段会显示 1899/12/30,但用其他工具查看或程序获取的日期是正常的;这时候需要改一个设置:

选项 –> 选项 –> General –> Data Type –> “时间映射设置”由“Standard”改为“SQLite”就可以了

6、Electron 安装失败

解决方案,使用淘宝镜像(不是切换淘宝源) https://npm.taobao.org/mirrors/

ELECTRON_MIRROR=http://npm.taobao.org/mirrors/electron/ npm install -g electron

如果这篇文章对你有用,可以点击下面的按钮告诉我

0

发表回复