Skip to main content

Deploy details

Published deploy for feroad

feat: update docs

Production: main@410b238

Deploy log

Initializing

Complete
8:01:15 AM: Build ready to start
8:01:25 AM: build-image version: a968751fa4fa5480005f9e300e07554d2cf87d06 (focal)
8:01:25 AM: buildbot version: a968751fa4fa5480005f9e300e07554d2cf87d06
8:01:25 AM: Fetching cached dependencies
8:01:25 AM: Starting to download cache of 149.6MB
8:01:27 AM: Finished downloading cache in 1.902s
8:01:27 AM: Starting to extract cache
8:01:28 AM: Finished extracting cache in 919ms
8:01:28 AM: Finished fetching cache in 2.878s
8:01:28 AM: Starting to prepare the repo for build
8:01:28 AM: Preparing Git Reference refs/heads/main
8:01:29 AM: Parsing package.json dependencies
8:01:31 AM: Starting to install dependencies
8:01:31 AM: Python version set to 3.8
8:01:31 AM: Attempting Ruby version 2.7.2, read from environment
8:01:31 AM: Using Ruby version 2.7.2
8:01:32 AM: Started restoring cached go cache
8:01:32 AM: Finished restoring cached go cache
8:01:32 AM: Installing Go version 1.19.5 (requested 1.19.5)
8:01:37 AM: go version go1.19.5 linux/amd64
8:01:37 AM: Using PHP version 8.0
8:01:38 AM: Started restoring cached Node.js version
8:01:39 AM: Finished restoring cached Node.js version
8:01:39 AM: v16.20.0 is already installed.
8:01:40 AM: Now using node v16.20.0 (npm v8.19.4)
8:01:40 AM: Enabling Node.js Corepack
8:01:40 AM: Started restoring cached build plugins
8:01:40 AM: Finished restoring cached build plugins
8:01:40 AM: Started restoring cached corepack dependencies
8:01:40 AM: Finished restoring cached corepack dependencies
8:01:40 AM: Found pnpm version (7.13.4) that doesn't match expected ()
Usage Error: Invalid package manager specification in CLI arguments; expected a semver version, range, or tag
8:01:40 AM: $ corepack prepare [--activate] [--all] [--json] [-o,--output] ...
8:01:40 AM: No pnpm workspaces detected
8:01:40 AM: Started restoring cached node modules
8:01:40 AM: Finished restoring cached node modules
8:01:41 AM: Installing npm packages using pnpm version 7.13.4
8:01:41 AM: Lockfile is up to date, resolution step is skipped
8:01:41 AM: Already up to date
8:01:41 AM: Done in 441ms
8:01:41 AM: npm packages installed using pnpm
8:01:41 AM: Install dependencies script success
8:01:41 AM: Starting build script
8:01:42 AM: Detected 0 framework(s)
8:01:42 AM: Section completed: initializing

Building

Complete
8:01:44 AM: Netlify Build
8:01:44 AM: ────────────────────────────────────────────────────────────────
8:01:44 AM:
8:01:44 AM: ❯ Version
8:01:44 AM: @netlify/build 29.10.1
8:01:44 AM:
8:01:44 AM: ❯ Flags
8:01:44 AM: baseRelDir: true
8:01:44 AM: buildId: 644a2bcb25abce000890875f
8:01:44 AM: deployId: 644a2bcb25abce0008908761
8:01:44 AM:
8:01:44 AM: ❯ Current directory
8:01:44 AM: /opt/build/repo
8:01:44 AM:
8:01:44 AM: ❯ Config file
8:01:44 AM: No config file was defined: using default values.
8:01:44 AM:
8:01:44 AM: ❯ Context
8:01:44 AM: production
8:01:44 AM:
8:01:44 AM: 1. Build command from Netlify app
8:01:44 AM: ────────────────────────────────────────────────────────────────
8:01:44 AM: ​
8:01:44 AM: $ pnpm run build
8:01:45 AM: > feroad@1.0.0 build /opt/build/repo
8:01:45 AM: > vitepress build docs
8:01:45 AM: vitepress v1.0.0-alpha.50
8:01:45 AM: - building client + server bundles...
8:01:51 AM: building client + server bundles...
8:01:51 AM: - rendering pages...
8:01:51 AM: {
8:01:51 AM: relativePath: '',
8:01:51 AM: title: '404',
8:01:51 AM: description: 'Not Found',
8:01:51 AM: headers: [],
8:01:51 AM: frontmatter: { sidebar: false, layout: 'page' },
8:01:51 AM: lastUpdated: 0,
8:01:51 AM: isNotFound: true
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '模块联邦',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [],
8:01:51 AM: relativePath: 'advanced/note.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '面试跳槽',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [],
8:01:51 AM: relativePath: 'grow/gop.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '前端基建&团队建设',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: { level: 2, title: '搞基建', slug: '搞基建', link: '#搞基建', children: [] },
8:01:51 AM: { level: 2, title: '管理', slug: '管理', link: '#管理', children: [] },
8:01:51 AM: { level: 2, title: '其他', slug: '其他', link: '#其他', children: [] }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'grow/infra.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '技术新闻',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [],
8:01:51 AM: relativePath: 'grow/news.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '前端晋升&职业规划',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '职业规划',
8:01:51 AM: slug: '职业规划',
8:01:51 AM: link: '#职业规划',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'grow/promotion.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '前端趋势',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [],
8:01:51 AM: relativePath: 'grow/trend.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '前端精进之路',
8:01:51 AM: titleTemplate: 'FERoad',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {
8:01:51 AM: layout: 'home',
8:01:51 AM: title: '前端精进之路',
8:01:51 AM: titleTemplate: 'FERoad',
8:01:51 AM: hero: {
8:01:51 AM: name: '前端精进之路',
8:01:51 AM: text: 'WEB前端进阶知识库',
8:01:51 AM: tagline: '世事无常,精进不已( 🚧 疯狂建设中...)',
8:01:51 AM: image: [Object],
8:01:51 AM: actions: [Array]
8:01:51 AM: },
8:01:51 AM: features: [ [Object], [Object], [Object], [Object], [Object], [Object] ]
8:01:51 AM: },
8:01:51 AM: headers: [],
8:01:51 AM: relativePath: 'index.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: 'HTML',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 3,
8:01:51 AM: title: 'async 和 defer 区别',
8:01:51 AM: slug: 'async-和-defer-区别',
8:01:51 AM: link: '#async-和-defer-区别',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 3,
8:01:51 AM: title: 'href 和 src 区别',
8:01:51 AM: slug: 'href-和-src-区别',
8:01:51 AM: link: '#href-和-src-区别',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 3,
8:01:51 AM: title: 'meta 标签有哪些',
8:01:51 AM: slug: 'meta-标签有哪些',
8:01:51 AM: link: '#meta-标签有哪些',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 3,
8:01:51 AM: title: 'HTML5 新特性',
8:01:51 AM: slug: 'html5-新特性',
8:01:51 AM: link: '#html5-新特性',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 3,
8:01:51 AM: title: 'offsetHeight-scrollHeight-clientHeight 区别',
8:01:51 AM: slug: 'offsetheight-scrollheight-clientheight-区别',
8:01:51 AM: link: '#offsetheight-scrollheight-clientheight-区别',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 3,
8:01:51 AM: title: 'getBoundingClientRect',
8:01:51 AM: slug: 'getboundingclientrect',
8:01:51 AM: link: '#getboundingclientrect',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 3,
8:01:51 AM: title: 'property 和 attribute 区别',
8:01:51 AM: slug: 'property-和-attribute-区别',
8:01:51 AM: link: '#property-和-attribute-区别',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 3,
8:01:51 AM: title: 'DOM 常用操作',
8:01:51 AM: slug: 'dom-常用操作',
8:01:51 AM: link: '#dom-常用操作',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 3,
8:01:51 AM: title: '如何判断一个元素是否在可视区域中?',
8:01:51 AM: slug: '如何判断一个元素是否在可视区域中',
8:01:51 AM: link: '#如何判断一个元素是否在可视区域中',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/1-html.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '项目',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '1.Vue怎么做权限管理?',
8:01:51 AM: slug: '_1-vue怎么做权限管理',
8:01:51 AM: link: '#_1-vue怎么做权限管理',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '2.从0到1自己构架一个vue项目',
8:01:51 AM: slug: '_2-从0到1自己构架一个vue项目',
8:01:51 AM: link: '#_2-从0到1自己构架一个vue项目',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '3. Vue 大数据量优化',
8:01:51 AM: slug: '_3-vue-大数据量优化',
8:01:51 AM: link: '#_3-vue-大数据量优化',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/10-project.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '其他',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '讲一下微前端方案?',
8:01:51 AM: slug: '讲一下微前端方案',
8:01:51 AM: link: '#讲一下微前端方案',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '方案的落地,以微前端举例:',
8:01:51 AM: slug: '方案的落地-以微前端举例',
8:01:51 AM: link: '#方案的落地-以微前端举例',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/11-other.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: 'Node',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '事件循环',
8:01:51 AM: slug: '事件循环',
8:01:51 AM: link: '#事件循环',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/12-node.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: 'TypeScript',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'TypeScript 的优势',
8:01:51 AM: slug: 'typescript-的优势',
8:01:51 AM: link: '#typescript-的优势',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'interface 和 type',
8:01:51 AM: slug: 'interface-和-type',
8:01:51 AM: link: '#interface-和-type',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/12-typescipt.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: 'CSS',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '01. 盒模型',
8:01:51 AM: slug: '_01-盒模型',
8:01:51 AM: link: '#_01-盒模型',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '02. position',
8:01:51 AM: slug: '_02-position',
8:01:51 AM: link: '#_02-position',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '03.   伪类/伪元素',
8:01:51 AM: slug: '_03-伪类-伪元素',
8:01:51 AM: link: '#_03-伪类-伪元素',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '04. 选择器优先级',
8:01:51 AM: slug: '_04-选择器优先级',
8:01:51 AM: link: '#_04-选择器优先级',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '05. 清除浮动',
8:01:51 AM: slug: '_05-清除浮动',
8:01:51 AM: link: '#_05-清除浮动',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '06. BFC',
8:01:51 AM: slug: '_06-bfc',
8:01:51 AM: link: '#_06-bfc',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '07.flex',
8:01:51 AM: slug: '_07-flex',
8:01:51 AM: link: '#_07-flex',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '08.居中',
8:01:51 AM: slug: '_08-居中',
8:01:51 AM: link: '#_08-居中',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '09.三角形',
8:01:51 AM: slug: '_09-三角形',
8:01:51 AM: link: '#_09-三角形',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '10.自适应正方形',
8:01:51 AM: slug: '_10-自适应正方形',
8:01:51 AM: link: '#_10-自适应正方形',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '11. display: none / visibility:hidden/opacity:0',
8:01:51 AM: slug: '_11-display-none-visibility-hidden-opacity-0',
8:01:51 AM: link: '#_11-display-none-visibility-hidden-opacity-0',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '12. 硬件加速',
8:01:51 AM: slug: '_12-硬件加速',
8:01:51 AM: link: '#_12-硬件加速',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '13. 重排重绘',
8:01:51 AM: slug: '_13-重排重绘',
8:01:51 AM: link: '#_13-重排重绘',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '14 效果和动画',
8:01:51 AM: slug: '_14-效果和动画',
8:01:51 AM: link: '#_14-效果和动画',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '15. 1px 问题',
8:01:51 AM: slug: '_15-1px-问题',
8:01:51 AM: link: '#_15-1px-问题',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '16. 小于 12 的字体',
8:01:51 AM: slug: '_16-小于-12-的字体',
8:01:51 AM: link: '#_16-小于-12-的字体',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/2-css.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: 'JavaSript 基础',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '01. 数据类型判断',
8:01:51 AM: slug: '_01-数据类型判断',
8:01:51 AM: link: '#_01-数据类型判断',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '02. 判断数组',
8:01:51 AM: slug: '_02-判断数组',
8:01:51 AM: link: '#_02-判断数组',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '03.数值精度',
8:01:51 AM: slug: '_03-数值精度',
8:01:51 AM: link: '#_03-数值精度',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '04. 类型转换',
8:01:51 AM: slug: '_04-类型转换',
8:01:51 AM: link: '#_04-类型转换',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '05. Object.is',
8:01:51 AM: slug: '_05-object-is',
8:01:51 AM: link: '#_05-object-is',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '06. 变量提升',
8:01:51 AM: slug: '_06-变量提升',
8:01:51 AM: link: '#_06-变量提升',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '07. 作用域',
8:01:51 AM: slug: '_07-作用域',
8:01:51 AM: link: '#_07-作用域',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '08.作用域链',
8:01:51 AM: slug: '_08-作用域链',
8:01:51 AM: link: '#_08-作用域链',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '09. 闭包',
8:01:51 AM: slug: '_09-闭包',
8:01:51 AM: link: '#_09-闭包',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '10. 执行上下文',
8:01:51 AM: slug: '_10-执行上下文',
8:01:51 AM: link: '#_10-执行上下文',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '11.this',
8:01:51 AM: slug: '_11-this',
8:01:51 AM: link: '#_11-this',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '12.原型和原型链',
8:01:51 AM: slug: '_12-原型和原型链',
8:01:51 AM: link: '#_12-原型和原型链',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '13.继承的方式(todo)',
8:01:51 AM: slug: '_13-继承的方式-todo',
8:01:51 AM: link: '#_13-继承的方式-todo',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '问题',
8:01:51 AM: slug: '问题',
8:01:51 AM: link: '#问题',
8:01:51 AM: children: [Array]
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/3-js1.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: 'JavaSript 高级',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '箭头函数',
8:01:51 AM: slug: '箭头函数',
8:01:51 AM: link: '#箭头函数',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'WeakSet/WeakMap',
8:01:51 AM: slug: 'weakset-weakmap',
8:01:51 AM: link: '#weakset-weakmap',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '垃圾回收机制',
8:01:51 AM: slug: '垃圾回收机制',
8:01:51 AM: link: '#垃圾回收机制',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'CJS 和 ESM 模块化对比',
8:01:51 AM: slug: 'cjs-和-esm-模块化对比',
8:01:51 AM: link: '#cjs-和-esm-模块化对比',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'for 循环问题',
8:01:51 AM: slug: 'for-循环问题',
8:01:51 AM: link: '#for-循环问题',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '迭代器和生成器',
8:01:51 AM: slug: '迭代器和生成器',
8:01:51 AM: link: '#迭代器和生成器',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'Promise',
8:01:51 AM: slug: 'promise',
8:01:51 AM: link: '#promise',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'ES新特性',
8:01:51 AM: slug: 'es新特性',
8:01:51 AM: link: '#es新特性',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/3-js2.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '计算机网络',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '1.TCP 和 UDP 区别',
8:01:51 AM: slug: '_1-tcp-和-udp-区别',
8:01:51 AM: link: '#_1-tcp-和-udp-区别',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '2.HTTP 状态码',
8:01:51 AM: slug: '_2-http-状态码',
8:01:51 AM: link: '#_2-http-状态码',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '3.HTTP2 的特性',
8:01:51 AM: slug: '_3-http2-的特性',
8:01:51 AM: link: '#_3-http2-的特性',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '4.HTTPS 的原理',
8:01:51 AM: slug: '_4-https-的原理',
8:01:51 AM: link: '#_4-https-的原理',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '5.从输入 URL 到显示页面',
8:01:51 AM: slug: '_5-从输入-url-到显示页面',
8:01:51 AM: link: '#_5-从输入-url-到显示页面',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '6.DNS 解析',
8:01:51 AM: slug: '_6-dns-解析',
8:01:51 AM: link: '#_6-dns-解析',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '7.长连接/长轮询/短轮询/websocket',
8:01:51 AM: slug: '_7-长连接-长轮询-短轮询-websocket',
8:01:51 AM: link: '#_7-长连接-长轮询-短轮询-websocket',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '8.CSRF',
8:01:51 AM: slug: '_8-csrf',
8:01:51 AM: link: '#_8-csrf',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '9.XSS',
8:01:51 AM: slug: '_9-xss',
8:01:51 AM: link: '#_9-xss',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '10.前端鉴权方案有哪些',
8:01:51 AM: slug: '_10-前端鉴权方案有哪些',
8:01:51 AM: link: '#_10-前端鉴权方案有哪些',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/5-network.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: 'Vue',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '1.说一下 Vue3 新特性',
8:01:51 AM: slug: '_1-说一下-vue3-新特性',
8:01:51 AM: link: '#_1-说一下-vue3-新特性',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '2. 说一下 Composition API 的优势',
8:01:51 AM: slug: '_2-说一下-composition-api-的优势',
8:01:51 AM: link: '#_2-说一下-composition-api-的优势',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '3. vue 响应式理解⭐',
8:01:51 AM: slug: '_3-vue-响应式理解⭐',
8:01:51 AM: link: '#_3-vue-响应式理解⭐',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '4. 虚拟DOM和Diff',
8:01:51 AM: slug: '_4-虚拟dom和diff',
8:01:51 AM: link: '#_4-虚拟dom和diff',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '5. 模板编译原理',
8:01:51 AM: slug: '_5-模板编译原理',
8:01:51 AM: link: '#_5-模板编译原理',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'nextTick',
8:01:51 AM: slug: 'nexttick',
8:01:51 AM: link: '#nexttick',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'MVVM概念',
8:01:51 AM: slug: 'mvvm概念',
8:01:51 AM: link: '#mvvm概念',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '双向绑定',
8:01:51 AM: slug: '双向绑定',
8:01:51 AM: link: '#双向绑定',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '组件通信方式',
8:01:51 AM: slug: '组件通信方式',
8:01:51 AM: link: '#组件通信方式',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'Vue 生命周期',
8:01:51 AM: slug: 'vue-生命周期',
8:01:51 AM: link: '#vue-生命周期',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'v-if 和 v-for',
8:01:51 AM: slug: 'v-if-和-v-for',
8:01:51 AM: link: '#v-if-和-v-for',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'v-if 和 v-show',
8:01:51 AM: slug: 'v-if-和-v-show',
8:01:51 AM: link: '#v-if-和-v-show',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'computed和watch',
8:01:51 AM: slug: 'computed和watch',
8:01:51 AM: link: '#computed和watch',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '组件扩展方法',
8:01:51 AM: slug: '组件扩展方法',
8:01:51 AM: link: '#组件扩展方法',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '组件data为什么必须是个函数?',
8:01:51 AM: slug: '组件data为什么必须是个函数',
8:01:51 AM: link: '#组件data为什么必须是个函数',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'slot实现原理',
8:01:51 AM: slug: 'slot实现原理',
8:01:51 AM: link: '#slot实现原理',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'keep-alive⭐',
8:01:51 AM: slug: 'keep-alive⭐',
8:01:51 AM: link: '#keep-alive⭐',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/6-vue.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: 'Vue全家桶和应用',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '怎么实现路由懒加载',
8:01:51 AM: slug: '怎么实现路由懒加载',
8:01:51 AM: link: '#怎么实现路由懒加载',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '如何实现一个路由',
8:01:51 AM: slug: '如何实现一个路由',
8:01:51 AM: link: '#如何实现一个路由',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'Vue-Loader是什么',
8:01:51 AM: slug: 'vue-loader是什么',
8:01:51 AM: link: '#vue-loader是什么',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/6-vue2.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: 'webpack',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '构建工具对比',
8:01:51 AM: slug: '构建工具对比',
8:01:51 AM: link: '#构建工具对比',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'Webpeck 构建流程⭐',
8:01:51 AM: slug: 'webpeck-构建流程⭐',
8:01:51 AM: link: '#webpeck-构建流程⭐',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '什么是Tapable',
8:01:51 AM: slug: '什么是tapable',
8:01:51 AM: link: '#什么是tapable',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'Loader和Plugin 的不同 ⭐',
8:01:51 AM: slug: 'loader和plugin-的不同-⭐',
8:01:51 AM: link: '#loader和plugin-的不同-⭐',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'Loader 怎么写⭐',
8:01:51 AM: slug: 'loader-怎么写⭐',
8:01:51 AM: link: '#loader-怎么写⭐',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'Plugin 怎么写⭐',
8:01:51 AM: slug: 'plugin-怎么写⭐',
8:01:51 AM: link: '#plugin-怎么写⭐',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'webpack的模块化机制',
8:01:51 AM: slug: 'webpack的模块化机制',
8:01:51 AM: link: '#webpack的模块化机制',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '懒加载原理',
8:01:51 AM: slug: '懒加载原理',
8:01:51 AM: link: '#懒加载原理',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '热更新原理⭐',
8:01:51 AM: slug: '热更新原理⭐',
8:01:51 AM: link: '#热更新原理⭐',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'Webpack5 新特性⭐',
8:01:51 AM: slug: 'webpack5-新特性⭐',
8:01:51 AM: link: '#webpack5-新特性⭐',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'Tree-Shaking 和Scope Hoisting',
8:01:51 AM: slug: 'tree-shaking-和scope-hoisting',
8:01:51 AM: link: '#tree-shaking-和scope-hoisting',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'hash、chunkhash、contenthash区别',
8:01:51 AM: slug: 'hash、chunkhash、contenthash区别',
8:01:51 AM: link: '#hash、chunkhash、contenthash区别',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'SourceMap 最佳实践',
8:01:51 AM: slug: 'sourcemap-最佳实践',
8:01:51 AM: link: '#sourcemap-最佳实践',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '组件库怎么实现按需加载',
8:01:51 AM: slug: '组件库怎么实现按需加载',
8:01:51 AM: link: '#组件库怎么实现按需加载',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: { level: 2, title: '分包', slug: '分包', link: '#分包', children: [] }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/7-webpack.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '前端工程化',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '聊一聊前端工程化',
8:01:51 AM: slug: '聊一聊前端工程化',
8:01:51 AM: link: '#聊一聊前端工程化',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '前端基建可以做哪些',
8:01:51 AM: slug: '前端基建可以做哪些',
8:01:51 AM: link: '#前端基建可以做哪些',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '脚手架要考虑哪些',
8:01:51 AM: slug: '脚手架要考虑哪些',
8:01:51 AM: link: '#脚手架要考虑哪些',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '说一下模块化方案',
8:01:51 AM: slug: '说一下模块化方案',
8:01:51 AM: link: '#说一下模块化方案',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '介绍一下vite 相比webpack的优缺点',
8:01:51 AM: slug: '介绍一下vite-相比webpack的优缺点',
8:01:51 AM: link: '#介绍一下vite-相比webpack的优缺点',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '说一下Rollup',
8:01:51 AM: slug: '说一下rollup',
8:01:51 AM: link: '#说一下rollup',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'AST和Babel',
8:01:51 AM: slug: 'ast和babel',
8:01:51 AM: link: '#ast和babel',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '包管理工具',
8:01:51 AM: slug: '包管理工具',
8:01:51 AM: link: '#包管理工具',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'CICD',
8:01:51 AM: slug: 'cicd',
8:01:51 AM: link: '#cicd',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/8-engineering.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '性能优化',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '1.从输入 URL 到页面显示发生了什么',
8:01:51 AM: slug: '_1-从输入-url-到页面显示发生了什么',
8:01:51 AM: link: '#_1-从输入-url-到页面显示发生了什么',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '2.性能优化的手段',
8:01:51 AM: slug: '_2-性能优化的手段',
8:01:51 AM: link: '#_2-性能优化的手段',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '3. Webpack 构建优化手段',
8:01:51 AM: slug: '_3-webpack-构建优化手段',
8:01:51 AM: link: '#_3-webpack-构建优化手段',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '4. Vue 有哪些优化手段',
8:01:51 AM: slug: '_4-vue-有哪些优化手段',
8:01:51 AM: link: '#_4-vue-有哪些优化手段',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/9-performance.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '算法',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [],
8:01:51 AM: relativePath: 'interview/algorithm.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '怎么回答问题',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '技术性答题要点',
8:01:51 AM: slug: '技术性答题要点',
8:01:51 AM: link: '#技术性答题要点',
8:01:51 AM: children: [Array]
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/anwser.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '打印题',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: "['1', '2', '3'].map(parseInt)",
8:01:51 AM: slug: '_1-2-3-map-parseint',
8:01:51 AM: link: '#_1-2-3-map-parseint',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/console.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '基础应用篇',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '1. 防抖/节流',
8:01:51 AM: slug: '_1-防抖-节流',
8:01:51 AM: link: '#_1-防抖-节流',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '2. 深拷贝',
8:01:51 AM: slug: '_2-深拷贝',
8:01:51 AM: link: '#_2-深拷贝',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '3.发布订阅模式',
8:01:51 AM: slug: '_3-发布订阅模式',
8:01:51 AM: link: '#_3-发布订阅模式',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'JSONP',
8:01:51 AM: slug: 'jsonp',
8:01:51 AM: link: '#jsonp',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/handwriting/base.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '大纲',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'JS 实现篇',
8:01:51 AM: slug: 'js-实现篇',
8:01:51 AM: link: '#js-实现篇',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '基础应用篇',
8:01:51 AM: slug: '基础应用篇',
8:01:51 AM: link: '#基础应用篇',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '综合应用篇',
8:01:51 AM: slug: '综合应用篇',
8:01:51 AM: link: '#综合应用篇',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/handwriting/outline.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '基础手写题',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '1. call / apply / bind',
8:01:51 AM: slug: '_1-call-apply-bind',
8:01:51 AM: link: '#_1-call-apply-bind',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '2. Object.create',
8:01:51 AM: slug: '_2-object-create',
8:01:51 AM: link: '#_2-object-create',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '3. new',
8:01:51 AM: slug: '_3-new',
8:01:51 AM: link: '#_3-new',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '4. instanceof',
8:01:51 AM: slug: '_4-instanceof',
8:01:51 AM: link: '#_4-instanceof',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '5. Promise.all / race / allSettled / any',
8:01:51 AM: slug: '_5-promise-all-race-allsettled-any',
8:01:51 AM: link: '#_5-promise-all-race-allsettled-any',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '6.数组方法实现',
8:01:51 AM: slug: '_6-数组方法实现',
8:01:51 AM: link: '#_6-数组方法实现',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '7.实现继承',
8:01:51 AM: slug: '_7-实现继承',
8:01:51 AM: link: '#_7-实现继承',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/handwriting/js.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '综合应用篇',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '并发请求控制',
8:01:51 AM: slug: '并发请求控制',
8:01:51 AM: link: '#并发请求控制',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '大数相加',
8:01:51 AM: slug: '大数相加',
8:01:51 AM: link: '#大数相加',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '数组和树转换',
8:01:51 AM: slug: '数组和树转换',
8:01:51 AM: link: '#数组和树转换',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '解析 url 参数为对象',
8:01:51 AM: slug: '解析-url-参数为对象',
8:01:51 AM: link: '#解析-url-参数为对象',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: 'LazyMan',
8:01:51 AM: slug: 'lazyman',
8:01:51 AM: link: '#lazyman',
8:01:51 AM: children: [Array]
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/handwriting/enhance.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '面试现场',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '知彼篇-公司想要什么样的人',
8:01:51 AM: slug: '知彼篇-公司想要什么样的人',
8:01:51 AM: link: '#知彼篇-公司想要什么样的人',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '知彼篇-面试流程',
8:01:51 AM: slug: '知彼篇-面试流程',
8:01:51 AM: link: '#知彼篇-面试流程',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '知彼篇-面试官的面试逻辑⭐️',
8:01:51 AM: slug: '知彼篇-面试官的面试逻辑⭐️',
8:01:51 AM: link: '#知彼篇-面试官的面试逻辑⭐️',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '知己篇-什么是满意的工作',
8:01:51 AM: slug: '知己篇-什么是满意的工作',
8:01:51 AM: link: '#知己篇-什么是满意的工作',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '知己篇-如何让你的简历更受青睐',
8:01:51 AM: slug: '知己篇-如何让你的简历更受青睐',
8:01:51 AM: link: '#知己篇-如何让你的简历更受青睐',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '知己篇-发现亮点⭐️',
8:01:51 AM: slug: '知己篇-发现亮点⭐️',
8:01:51 AM: link: '#知己篇-发现亮点⭐️',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '问答篇-自我介绍',
8:01:51 AM: slug: '问答篇-自我介绍',
8:01:51 AM: link: '#问答篇-自我介绍',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '问答篇-回答技术问题',
8:01:51 AM: slug: '问答篇-回答技术问题',
8:01:51 AM: link: '#问答篇-回答技术问题',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '问答篇-展示你在项目中的重要性',
8:01:51 AM: slug: '问答篇-展示你在项目中的重要性',
8:01:51 AM: link: '#问答篇-展示你在项目中的重要性',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '问答篇-优缺点',
8:01:51 AM: slug: '问答篇-优缺点',
8:01:51 AM: link: '#问答篇-优缺点',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '问答篇-兴趣爱好',
8:01:51 AM: slug: '问答篇-兴趣爱好',
8:01:51 AM: link: '#问答篇-兴趣爱好',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '问答篇-回答问题要到位',
8:01:51 AM: slug: '问答篇-回答问题要到位',
8:01:51 AM: link: '#问答篇-回答问题要到位',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '问答篇-被问住了怎么办',
8:01:51 AM: slug: '问答篇-被问住了怎么办',
8:01:51 AM: link: '#问答篇-被问住了怎么办',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '问答篇-如何向面试官提问',
8:01:51 AM: slug: '问答篇-如何向面试官提问',
8:01:51 AM: link: '#问答篇-如何向面试官提问',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '贯通篇-精益能力',
8:01:51 AM: slug: '贯通篇-精益能力',
8:01:51 AM: link: '#贯通篇-精益能力',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '贯通篇-技术领导力',
8:01:51 AM: slug: '贯通篇-技术领导力',
8:01:51 AM: link: '#贯通篇-技术领导力',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '综合篇-了解团队',
8:01:51 AM: slug: '综合篇-了解团队',
8:01:51 AM: link: '#综合篇-了解团队',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: { level: 2, title: '结束语', slug: '结束语', link: '#结束语', children: [] },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '答疑',
8:01:51 AM: slug: '答疑',
8:01:51 AM: link: '#答疑',
8:01:51 AM: children: [Array]
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '附录-如何准备面试',
8:01:51 AM: slug: '附录-如何准备面试',
8:01:51 AM: link: '#附录-如何准备面试',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/interview.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '设计模式',
8:01:51 AM: slug: '设计模式',
8:01:51 AM: link: '#设计模式',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '前言',
8:01:51 AM: slug: '前言',
8:01:51 AM: link: '#前言',
8:01:51 AM: children: [Array]
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '创建型模式',
8:01:51 AM: slug: '创建型模式',
8:01:51 AM: link: '#创建型模式',
8:01:51 AM: children: [Array]
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '结构型模式',
8:01:51 AM: slug: '结构型模式',
8:01:51 AM: link: '#结构型模式',
8:01:51 AM: children: [Array]
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '行为模式',
8:01:51 AM: slug: '行为模式',
8:01:51 AM: link: '#行为模式',
8:01:51 AM: children: [Array]
8:01:51 AM: },
8:01:51 AM: { level: 2, title: '总览', slug: '总览', link: '#总览', children: [] },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '参考资料',
8:01:51 AM: slug: '参考资料',
8:01:51 AM: link: '#参考资料',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/design-pattern.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '面试题库导航',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '面试题汇总',
8:01:51 AM: slug: '面试题汇总',
8:01:51 AM: link: '#面试题汇总',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '面经汇总',
8:01:51 AM: slug: '面经汇总',
8:01:51 AM: link: '#面经汇总',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/question.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '面试笔记',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '面试流程分析',
8:01:51 AM: slug: '面试流程分析',
8:01:51 AM: link: '#面试流程分析',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: { level: 2, title: '简历', slug: '简历', link: '#简历', children: [] },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '项目亮点',
8:01:51 AM: slug: '项目亮点',
8:01:51 AM: link: '#项目亮点',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '面试知识点',
8:01:51 AM: slug: '面试知识点',
8:01:51 AM: link: '#面试知识点',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '综合问题',
8:01:51 AM: slug: '综合问题',
8:01:51 AM: link: '#综合问题',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '注意事项',
8:01:51 AM: slug: '注意事项',
8:01:51 AM: link: '#注意事项',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '自我介绍',
8:01:51 AM: slug: '自我介绍',
8:01:51 AM: link: '#自我介绍',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '项目经历',
8:01:51 AM: slug: '项目经历',
8:01:51 AM: link: '#项目经历',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '结构化表达',
8:01:51 AM: slug: '结构化表达',
8:01:51 AM: link: '#结构化表达',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/note.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '如何写好简历',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '必看文章',
8:01:51 AM: slug: '必看文章',
8:01:51 AM: link: '#必看文章',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '简历模板',
8:01:51 AM: slug: '简历模板',
8:01:51 AM: link: '#简历模板',
8:01:51 AM: children: []
8:01:51 AM: }
8:01:51 AM: ],
8:01:51 AM: relativePath: 'interview/resume.md'
8:01:51 AM: }
8:01:51 AM: {
8:01:51 AM: title: '解决方案',
8:01:51 AM: description: '',
8:01:51 AM: frontmatter: {},
8:01:51 AM: headers: [
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '低代码项目',
8:01:51 AM: slug: '低代码项目',
8:01:51 AM: link: '#低代码项目',
8:01:51 AM: children: [Array]
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '性能优化',
8:01:51 AM: slug: '性能优化',
8:01:51 AM: link: '#性能优化',
8:01:51 AM: children: []
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:51 AM: title: '研发效能&技术建设',
8:01:51 AM: slug: '研发效能-技术建设',
8:01:51 AM: link: '#研发效能-技术建设',
8:01:51 AM: children: [Array]
8:01:51 AM: },
8:01:51 AM: {
8:01:51 AM: level: 2,
8:01:52 AM: title: '代码能力',
8:01:52 AM: slug: '代码能力',
8:01:52 AM: link: '#代码能力',
8:01:52 AM: children: []
8:01:52 AM: }
8:01:52 AM: ],
8:01:52 AM: relativePath: 'project/1-solution.md'
8:01:52 AM: }
8:01:52 AM: {
8:01:52 AM: title: '低代码',
8:01:52 AM: description: '',
8:01:52 AM: frontmatter: {},
8:01:52 AM: headers: [],
8:01:52 AM: relativePath: 'project/2-lowcode.md'
8:01:52 AM: }
8:01:53 AM: {
8:01:53 AM: title: 'Vue项目实践',
8:01:53 AM: description: '',
8:01:53 AM: frontmatter: {},
8:01:53 AM: headers: [
8:01:53 AM: {
8:01:53 AM: level: 2,
8:01:53 AM: title: 'vue实现权限控制,按钮级别',
8:01:53 AM: slug: 'vue实现权限控制-按钮级别',
8:01:53 AM: link: '#vue实现权限控制-按钮级别',
8:01:53 AM: children: []
8:01:53 AM: }
8:01:53 AM: ],
8:01:53 AM: relativePath: 'project/2-vue-project.md'
8:01:53 AM: }
8:01:53 AM: {
8:01:53 AM: title: '必看好书',
8:01:53 AM: description: '',
8:01:53 AM: frontmatter: {},
8:01:53 AM: headers: [],
8:01:53 AM: relativePath: 'study/book.md'
8:01:53 AM: }
8:01:53 AM: {
8:01:53 AM: title: '小册推荐',
8:01:53 AM: description: '',
8:01:54 AM: frontmatter: {},
8:01:54 AM: headers: [
8:01:54 AM: {
8:01:54 AM: level: 2,
8:01:54 AM: title: '掘金小册',
8:01:54 AM: slug: '掘金小册',
8:01:54 AM: link: '#掘金小册',
8:01:54 AM: children: []
8:01:54 AM: }
8:01:54 AM: ],
8:01:54 AM: relativePath: 'study/booklet.md'
8:01:54 AM: }
8:01:54 AM: {
8:01:54 AM: title: '免费好课',
8:01:54 AM: description: '',
8:01:54 AM: frontmatter: {},
8:01:54 AM: headers: [],
8:01:54 AM: relativePath: 'study/lesson.md'
8:01:54 AM: }
8:01:54 AM: {
8:01:54 AM: title: '设计网站',
8:01:54 AM: description: '',
8:01:54 AM: frontmatter: {},
8:01:54 AM: headers: [],
8:01:54 AM: relativePath: 'tools/website.md'
8:01:55 AM: }
8:01:55 AM: {
8:01:55 AM: title: '浏览器',
8:01:55 AM: description: '',
8:01:55 AM: frontmatter: {},
8:01:55 AM: headers: [
8:01:55 AM: {
8:01:55 AM: level: 2,
8:01:55 AM: title: '1.浏览器进程有哪些',
8:01:56 AM: slug: '_1-浏览器进程有哪些',
8:01:56 AM: link: '#_1-浏览器进程有哪些',
8:01:56 AM: children: []
8:01:56 AM: },
8:01:56 AM: {
8:01:56 AM: level: 2,
8:01:56 AM: title: '2.事件循环机制',
8:01:56 AM: slug: '_2-事件循环机制',
8:01:56 AM: link: '#_2-事件循环机制',
8:01:56 AM: children: []
8:01:56 AM: },
8:01:56 AM: {
8:01:56 AM: level: 2,
8:01:56 AM: title: '3.浏览器存储',
8:01:56 AM: slug: '_3-浏览器存储',
8:01:56 AM: link: '#_3-浏览器存储',
8:01:56 AM: children: []
8:01:56 AM: },
8:01:56 AM: {
8:01:56 AM: level: 2,
8:01:56 AM: title: '4.怎么解决跨域问题',
8:01:56 AM: slug: '_4-怎么解决跨域问题',
8:01:57 AM: link: '#_4-怎么解决跨域问题',
8:01:57 AM: children: []
8:01:57 AM: },
8:01:57 AM: {
8:01:57 AM: level: 2,
8:01:57 AM: title: '5.浏览器缓存',
8:01:57 AM: slug: '_5-浏览器缓存',
8:01:57 AM: link: '#_5-浏览器缓存',
8:01:57 AM: children: []
8:01:57 AM: },
8:01:57 AM: {
8:01:57 AM: level: 2,
8:01:57 AM: title: '6.浏览器渲染过程',
8:01:57 AM: slug: '_6-浏览器渲染过程',
8:01:57 AM: link: '#_6-浏览器渲染过程',
8:01:57 AM: children: []
8:01:57 AM: },
8:01:57 AM: {
8:01:57 AM: level: 2,
8:01:57 AM: title: '7.rAF/rIC',
8:01:57 AM: slug: '_7-raf-ric',
8:01:57 AM: link: '#_7-raf-ric',
8:01:57 AM: children: []
8:01:58 AM: }
8:01:58 AM: ],
8:01:58 AM: relativePath: 'interview/4-browser.md'
8:01:58 AM: }
8:01:58 AM: {
8:01:58 AM: title: '浏览器',
8:01:58 AM: description: '',
8:01:58 AM: frontmatter: {},
8:01:58 AM: headers: [
8:01:58 AM: {
8:01:58 AM: level: 2,
8:01:58 AM: title: '1.浏览器进程有哪些',
8:01:58 AM: slug: '_1-浏览器进程有哪些',
8:01:58 AM: link: '#_1-浏览器进程有哪些',
8:01:58 AM: children: []
8:01:58 AM: },
8:01:58 AM: {
8:01:58 AM: level: 2,
8:01:58 AM: title: '2.事件循环机制',
8:01:58 AM: slug: '_2-事件循环机制',
8:01:58 AM: link: '#_2-事件循环机制',
8:01:58 AM: children: []
8:01:58 AM: },
8:01:58 AM: {
8:01:59 AM: level: 2,
8:01:59 AM: title: '3.浏览器存储',
8:01:59 AM: slug: '_3-浏览器存储',
8:01:59 AM: link: '#_3-浏览器存储',
8:01:59 AM: children: []
8:01:59 AM: },
8:01:59 AM: {
8:01:59 AM: level: 2,
8:01:59 AM: title: '4.怎么解决跨域问题',
8:01:59 AM: slug: '_4-怎么解决跨域问题',
8:01:59 AM: link: '#_4-怎么解决跨域问题',
8:01:59 AM: children: []
8:01:59 AM: },
8:01:59 AM: {
8:01:59 AM: level: 2,
8:01:59 AM: title: '5.浏览器缓存',
8:01:59 AM: slug: '_5-浏览器缓存',
8:01:59 AM: link: '#_5-浏览器缓存',
8:01:59 AM: children: []
8:01:59 AM: },
8:01:59 AM: {
8:01:59 AM: level: 2,
8:01:59 AM: title: '6.浏览器渲染过程',
8:01:59 AM: slug: '_6-浏览器渲染过程',
8:02:00 AM: link: '#_6-浏览器渲染过程',
8:02:00 AM: children: []
8:02:00 AM: },
8:02:00 AM: {
8:02:00 AM: level: 2,
8:02:00 AM: title: '7.rAF/rIC',
8:02:00 AM: slug: '_7-raf-ric',
8:02:00 AM: link: '#_7-raf-ric',
8:02:00 AM: children: []
8:02:00 AM: }
8:02:00 AM: ],
8:02:00 AM: relativePath: 'interview/browser.md'
8:02:00 AM: }
8:02:00 AM: rendering pages...
8:02:00 AM: build complete in 6.54s.
8:02:00 AM: ​
8:02:00 AM: (build.command completed in 7.1s)
8:02:00 AM:
8:02:01 AM: (Netlify Build completed in 8s)
8:02:02 AM: Section completed: building
8:02:04 AM: Finished processing build request in 38.636s

Deploying

Complete
8:01:51 AM: Starting to deploy site from 'docs/.vitepress/dist'
8:01:51 AM: Calculating files to upload
8:01:52 AM: 48 new files to upload
8:01:52 AM: 0 new functions to upload
8:01:52 AM: Section completed: deploying
8:02:00 AM: 2. Deploy site
8:02:00 AM: ────────────────────────────────────────────────────────────────
8:02:00 AM: ​
8:02:00 AM: Site deploy was successfully initiated
8:02:00 AM: ​
8:02:00 AM: (Deploy site completed in 874ms)

Cleanup

Complete
8:02:01 AM: Netlify Build Complete
8:02:01 AM: ────────────────────────────────────────────────────────────────
8:02:01 AM: ​
8:02:01 AM: Caching artifacts
8:02:01 AM: Started saving node modules
8:02:01 AM: Finished saving node modules
8:02:01 AM: Started saving build plugins
8:02:01 AM: Finished saving build plugins
8:02:01 AM: Started saving corepack cache
8:02:01 AM: Finished saving corepack cache
8:02:01 AM: Started saving pip cache
8:02:01 AM: Finished saving pip cache
8:02:01 AM: Started saving emacs cask dependencies
8:02:01 AM: Finished saving emacs cask dependencies
8:02:01 AM: Started saving maven dependencies
8:02:01 AM: Finished saving maven dependencies
8:02:01 AM: Started saving boot dependencies
8:02:01 AM: Finished saving boot dependencies
8:02:01 AM: Started saving rust rustup cache
8:02:01 AM: Finished saving rust rustup cache
8:02:01 AM: Started saving go dependencies
8:02:02 AM: Finished saving go dependencies
8:02:02 AM: Build script success
8:02:02 AM: Uploading Cache of size 144.7MB
8:02:04 AM: Section completed: cleanup

Post-processing

Complete
8:01:52 AM: Starting post processing
8:01:52 AM: Post processing - HTML
8:01:54 AM: Post processing - header rules
8:01:54 AM: Post processing - redirect rules
8:01:55 AM: Post processing done
8:01:55 AM: Section completed: postprocessing
8:01:55 AM: Site is live ✨