0%

安装hexo

1
npm install -g hexo-cli

mac电脑可能需要使用sudo权限

1
sudo npm install -g hexo-cli

初始化项目,安装依赖

1
2
3
$ hexo init <folder>
$ cd <folder>
$ npm install

各类配置项参考hexo中文文档

发布到github pages

  1. 创建一个github仓库<yourname>.github.com,比如我的lampofaladdin.github.io
  2. 在_config.yml中增加配置项
    1
    2
    3
    4
    deploy:
    type: git
    repo: <github git地址>
    # 例如git@github.com:lampofaladdin/lampofaladdin.github.io.git
  3. 发布到github hexo deploy

使用阿里云oss静态页关联自己域名

  1. 创建阿里云Bucket,不开通版本控制,读写为公共读,其他默认
  2. 创建ram用户,给用户oss的控制权限
  3. 创建ram用户的AccessKey,获取到AccessKeyID,AccessKeySecret
  4. 进入bucket,基础设置,静态页面,默认首页为index.html,子目录首页开通
  5. 传输管理,绑定你已经购买备案好的域名。
  6. 安装hexo-deployer-ali-oss,npm i hexo-deployer-ali-oss --save
  7. 在_config.yml中增加配置
    1
    2
    3
    4
    5
    6
    deploy:
    type: ali-oss
    region: <regionName> # oss-cn-hangzhou oss-cn-beijing oss-cn-guangzhou 等
    accessKeyId: <AccessKeyID>
    accessKeySecret: <AccessKeySecret>
    bucket: <bucketName> # wddv
  8. npm deploy

同时发布在githubPage 与 阿里云oss

1
2
3
4
5
6
7
8
deploy:
- type: git
repo: <github git地址>
- type: ali-oss
region: <regionName> # oss-cn-hangzhou oss-cn-beijing oss-cn-guangzhou 等
accessKeyId: <AccessKeyID>
accessKeySecret: <AccessKeySecret>
bucket: <bucketName> # wddv

TODO

  • git push的时候depoly
  • 标签分类怎么做

相关链接

第 160 题:输出以下代码运行结果,为什么?如果希望每隔 1s 输出一个结果,应该如何改造?注意不可改动 square 方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
const list = [1, 2, 3]
const square = num => {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(num * num)
}, 1000)
})
}

function test() {
list.forEach(async x=> {
const res = await square(x)
console.log(res)
})
}
test()

题解

因为foreach是并行执行的,并不支持异步,需要改成for或者 for of

1
2
3
4
5
6
7
8
9
10
11
12
13
async function test() {
for(let i = 0 ;i < list.length ; i++){
const res = await square(list[i])
console.log(res)
}
}

async function test() {
for(let i of list){
let res = await square(i)
console.log(res)
}
}

聊聊生活,写写技术.

欢迎加入前端交流群·VUE|JS|TS|全栈|前端交流·群号:318195769