0%

是因为prefix没有设置导致的。
在安装完nodejs后,通过npm下载全局模块默认安装到以下目录:

1
C:\Users\_username_\AppData\Roaming\npm

运行下面的命令设置全局模块存放路径:

1
npm config set prefix "C:\Users\_username_"

或者修改.npmrc文件,默认在 C:\Users\_username_

将默认值改为:

1
prefix=C:\Users\_username_ 

注意斜杠\

1
npm config set prefix C:/Users/_username_

不加引号的话需要写成右斜杠,最好不要用有空格的文件夹

chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。

给文件夹及文件夹里面的所有文件加权限
chmod -R 777 folder

以下命令均在/home目录下操作
cd /home #进入/home目录

1、把/home目录下面的mydata目录压缩为mydata.zip
zip -r mydata.zip mydata #压缩mydata目录

2、把/home目录下面的mydata.zip解压到mydatabak目录里面
unzip mydata.zip -d mydatabak

3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip

zip -r abc123.zip abc 123.txt

4、把/home目录下面的wwwroot.zip直接解压到/home目录里面

unzip wwwroot.zip

5、把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面

unzip abc*.zip

6、查看把/home目录下面的wwwroot.zip里面的内容

unzip -v wwwroot.zip

7、验证/home目录下面的wwwroot.zip是否完整

unzip -t wwwroot.zip

8、把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录

unzip -j wwwroot.zip

=====================================================
主要参数
-c:将解压缩的结果
-l:显示压缩文件内所包含的文件
-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
-t:检查压缩文件是否正确
-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
-v:执行是时显示详细的信息
-z:仅显示压缩文件的备注文字
-a:对文本文件进行必要的字符转换
-b:不要对文本文件进行字符转换
-C:压缩文件中的文件名称区分大小写
-j:不处理压缩文件中原有的目录路径
-L:将压缩文件中的全部文件名改为小写
-M:将输出结果送到more程序处理
-n:解压缩时不要覆盖原有的文件
-o:不必先询问用户,unzip执行后覆盖原有文件
-P<密码>:使用zip的密码选项
-q:执行时不显示任何信息
-s:将文件名中的空白字符转换为底线字符
-V:保留VMS的文件版本信息
-X:解压缩时同时回存文件原来的UID/GID

原文链接
https://www.cnblogs.com/inzens/articles/4968898.html

1.自卑是人际排序的产物。

test 评价与被评价 努力被目标感驱动 努力被序列感驱动,对努力的模仿,被排序思维支配,追求优越感。

2.自卑是一种自我保护。

排序思维带来竞争,带来压力 用自卑来当借口避免竞争 潜意识也是你自己 因为自卑所以不想行动(被自卑支配) 因为不想行动所以自卑 如果不是自卑的人,你会做什么 我们自己是行动的主人 害怕行动带来的结果 自卑保护你受结果的伤害

3.如果我们不去行动,我们就会用别的方法来满足自己的自尊需要(自卑的防御机制)

用自卑的借口,满足自己的自尊 自卑让我们不行动 如果不是因为什么,我就会怎么样 计划就是编织的一个幻想

语音识别和语音合成将是智能音箱以及人工智能发展的关键,这就像是电容屏之于智能手机,现在的语音识别和语音合成就像当年的电阻屏,如果能发展到电容屏的阶段,智能音箱以及人工智能将有一个质的飞跃。

复习复习复习

ES6
typescript 412
vuejs
reactjs (384electron)
ReactNative
nodejs
python
php/java
flutter
webpack
mongoDB
git
koa(express)
pug(jade)/EJS
less/sass

vue-router

手写路由 280-2-8
vue.config.js

express & koa

178 trailer
320 blog
342 lincms
354 restfull api

中间件原理 320-9-15 blog
实现自己的koa2 218-11 mpvue

koa中间件 280-3-3 meituan
洋葱模型
中间件 是一个函数 参数 ctx 异步 next()

全栈项目

博客 320
Restfull API 354
lincms 342
美团 nuxt 280
trailer

npm

428-12-1
npm whoami
npm config ls
npm adduser

commit

husky commitizen commitlint git-cz

vue源码228

mvvm 129-4-8

设计模式 / ES6 / TS / 数据结构(js/java/c++)

todo 935

urb 英[‘ɜ:b]
美[‘ɜ:b]
abbr. urban 都市的; urbanite 城市居民; urbanization 都市化; urbanist 城市规划专家;
[例句]Therefore, the paper puts forward encouraging domestic demand as a method for urban development and suggests relevant adaptation of urb.
在此基础上,提出了以扩大内需为主的城市发展思路。

urban 英[ˈɜ:bən]
美[ˈɜ:rbən]
adj. 都市的; 具有城市或城市生活特点的; 市内;
[例句]Most of the population is an urban population
绝大多数人口都是城镇居民。

suburb 英[ˈsʌbɜ:b]
美[ˈsʌbɜ:rb]
n. 郊区,城郊; 边缘; 附近,周围;
[例句]Anna was born in 1923 in Ardwick, a suburb of Manchester.
安娜于1923年出生在曼彻斯特的郊区阿德维克。
[其他] 复数:suburbs

suburban 英[səˈbɜ:bən]
美[səˈbɜ:rbən]
adj. 城郊的,在郊区的,城郊住宅区的; 土气的; 见闻不广的;
n. 郊区居民;
[例句]His clothes are conservative and suburban.
他衣着保守而传统。

cabin 英[ˈkæbɪn]
美[ˈkæbɪn]
n. 客舱; <美>小木屋; (轮船上工作或生活的) 隔间;
vt. 把…关在小屋里; 使受拘束;
vi. 住在小屋里;
[例句]He showed her to a small cabin.
他把她领到了一个小船舱。
[其他] 第三人称单数:cabins 复数:cabins 现在分词:cabining 过去式:cabined 过去分词:cabined

lodge 英[lɒdʒ]
美[lɑ:dʒ]
vi. 存放; 暂住; 埋入; (权利、权威等) 归属;
vt. 提出(报告、要求、申诉等); 容纳; 寄存; 把(权利、权威等)授予;
n. <古>小屋,草屋; (北美印第安人的) 帐篷; (森林、猎场等的) 看守小屋; (学校、工厂等的) 传达室;
[例句]I drove out of the gates, past the keeper’s lodge.
我驶出大门,经过守门人的小屋。
[其他] 第三人称单数:lodges 复数:lodges 现在分词:lodging 过去式:lodged 过去分词:lodged

最近在阮一峰老师的网站学习es6,在promise小节下面看到下面的代码,作为小白的我看到这个代码的第一反应是setTimeout怎么有三个参数,上网一查才知道,setTimeout可以跟多个参数,第三个及之后的参数都是第一个参数(函数)的参数

下面是一个Promise对象的简单例子。

function timeout(ms) {
  return new Promise((resolve, reject) => {
    setTimeout(resolve, ms, 'done');
  });
}

timeout(100).then((value) => {
  console.log(value);
});

定义和用法

setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。

语法

setTimeout(code,millisec)

第一个参数

1
2
3
4
5
setTimeout(console.log(this),3000);//console.log(this)会立即执行

setTimeout('console.log(this)',3000);//console.log(this)加引号之后3s之后执行

setTimeout(function(){console.log(this)},3000);//console.log(this)3s之后执行
1
2
3
4
5
6
{
function test(){
console.log(this);
}
setTimeout(test,3000);//console.log(this)3s之后执行
}
1
2
3
4
5
6
{
function test(){
console.log(this);
}
setTimeout(test(),3000);//console.log(this)立即执行
}
1
2
3
4
5
6
{
function test(){
console.log(this);
}
setTimeout('test()',3000);//console.log(this)3s之后执行
}

总结:setTimeout里面的函数有三种正确写法

  1. 用引号引起来,
  2. 放到匿名函数里,
  3. 使用函数名直接调用,不加括号。

第一个参数this的作用域

参考:http://www.cnblogs.com/hutaoer/p/3423782.html

第一段代码:

1
2
3
4
5
6
7
8
9
10
var test = "in the window";

setTimeout(function() {alert('outer ' + test)}, 0); // 输出 outer in the window ,默认在window的全局作用域下

function f() {
var test = 'in the f!'; // 局部变量,window作用域不可访问
setTimeout('alert("inner " + test)', 0); // 输出 inner in the window, 虽然在f方法的中调用,但执行代码(字符串形式的代码)默认在window全局作用域下,test也指向全局的test
}

f();

第二段代码:

1
2
3
4
5
6
7
8
9
10
var test = "in the window";

setTimeout(function() {alert('outer' + test)}, 0); // outer in the window ,没有问题,在全局下调用,访问全局中的test

function f() {
var test = 'in the f!';
setTimeout(function(){alert('inner '+ test)}, 0); // inner in the f! 有问题,不是说好了执行函数中的this指向的是window吗?那test也应该对应window下的值才对,怎么test的值却是 f()中的值呢????
}

f();

第三段代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var test = "in the window";

setTimeout(function() {
alert('outer ' + test)
}, 0); // in the window

function f() {
var test = 'in the f!';

function ff() {
alert('inner ' + test);// 能访问到f中的test局部变量
alert('inner ' + this.test);//window中的test
}

setTimeout(ff, 0); // inner in the f!
}

f();

总结:
三种写法中

  1. 引号引起来的函数中的this指向和变量作用域都是window,
  2. 匿名函数中的变量作用域是上下文,this指向是window,
  3. 以函数名直接调用中的变量作用域是上下文,this指向是window。 第2和第3其实是一种写法,不同形式。 其实匿名函数中this应该指向词法作用域,这是javascript的一个错误,在箭头函数中已经修复了这个错误。

箭头函数中的this作用域

参考:
https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001438565969057627e5435793645b7acaee3b6869d1374000