PageSourceSearch

https://angusfu.github.io/_nuxt/D7O1_MXN.js

js angusfu.github.io collected 2026-10-03 08:37:51 UTC 13,659 bytes, 1 lines download raw bytes

1import{_ as h}from"./8oskhlv7.js";import{u as d,d as a,a as e,F as o,r as l,e as _,o as i,b as s,t as n,f as u,w as y}from"./B1kHp8qp.js";const b=JSON.parse('[{"yearMonth":"2021 年 2 月","data":[{"title":"Node.js 中的一些安全问题","pathname":"node-security","create_time":"2021-02-01"}]},{"yearMonth":"2020 年 8 月","data":[{"title":"如何写技术文章","pathname":"writing-a-tech-article","create_time":"2020-08-09"}]},{"yearMonth":"2020 年 7 月","data":[{"title":"讲给前端的 OpenResty","pathname":"openresty-for-frontend","create_time":"2020-07-22"}]},{"yearMonth":"2020 年 4 月","data":[{"title":"某官网开发手记","pathname":"relection-on-static-sites-development","create_time":"2020-04-22"},{"title":"d8 安装手记","pathname":"install-d8","create_time":"2020-04-19"},{"title":"Clean Code","pathname":"clean-code","create_time":"2020-04-18"}]},{"yearMonth":"2019 年 7 月","data":[{"title":"前端挖坑不完全指南","pathname":"never-do-this-in-fed","create_time":"2019-07-16"}]},{"yearMonth":"2018 年 5 月","data":[{"title":"移动端跨平台框架 flutter 简介","pathname":"flutter-slides","create_time":"2018-05-21"}]},{"yearMonth":"2018 年 4 月","data":[{"title":"读《第五项修炼》","pathname":"fifth-discipline","create_time":"2018-04-22"}]},{"yearMonth":"2018 年 3 月","data":[{"title":"读《管理的常识》","pathname":"common-sense-on-management","create_time":"2018-03-25"}]},{"yearMonth":"2018 年 2 月","data":[{"title":"读《卓有成效的管理者》","pathname":"the-effective-executive","create_time":"2018-02-27"}]},{"yearMonth":"2018 年 1 月","data":[{"title":"读稻盛和夫《干法》","pathname":"thinking-on-inamori-kazuos-book","create_time":"2018-01-23"}]},{"yearMonth":"2017 年 12 月","data":[{"title":"读《一分钟经理人》","pathname":"one-minute-manager","create_time":"2017-12-23"}]},{"yearMonth":"2017 年 10 月","data":[{"title":"[译] 极速渲染引擎 WebRender 揭秘","pathname":"firefox-webrender","create_time":"2017-10-14"}]},{"yearMonth":"2017 年 9 月","data":[{"title":"[译] 深入 JavaScript 数组:进化与性能","pathname":"javascript-array-evolution-performance","create_time":"2017-09-12"}]},{"yearMonth":"2017 年 8 月","data":[{"title":"ArrayBuffer and TypedArray in ES2015","pathname":"es2015-arraybuffer","create_time":"2017-08-10"},{"title":"[译] font-display 的使用","pathname":"font-display","create_time":"2017-08-04"}]},{"yearMonth":"2017 年 7 月","data":[{"title":"[译] 事件代理:模式 or 反模式?","pathname":"event-delegation-pattern-or-anti-pattern","create_time":"2017-07-19"},{"title":"函数响应式编程 —— RxJS 简介","pathname":"functional-programming","create_time":"2017-07-18"}]},{"yearMonth":"2017 年 6 月","data":[{"title":"ES2015 Reflection API","pathname":"es2015-reflect","create_time":"2017-06-26"}]},{"yearMonth":"2017 年 5 月","data":[{"title":"[译] Web 安全清单","pathname":"web-developer-security-checklist","create_time":"2017-05-22"},{"title":"[译] GraphQL 的庐山真面目","pathname":"so-whats-this-graphql-thing-i-keep-hearing-about","create_time":"2017-05-13"},{"title":"Chrome 中的 “Tab to Search” 与 Open Search","pathname":"opensearch","create_time":"2017-05-08"},{"title":"[译] 浏览器中的 ES6 module 实现","pathname":"es-modules-in-browsers","create_time":"2017-05-06"},{"title":"Facebook 开源代码优化工具 Prepack","pathname":"prepack","create_time":"2017-05-04"}]},{"yearMonth":"2017 年 4 月","data":[{"title":"[译] 内容加速黑科技趣谈","pathname":"fun-hacks-faster-content","create_time":"2017-04-28"},{"title":"[译] Emoji.prototype.length  —— Unicode 字符那些事儿","pathname":"unicode-javascript-and-the-emoji-family","create_time":"2017-04-27"},{"title":"笔记:如何获取网站根域名","pathname":"get-root-domain-of-a-site","create_time":"2017-04-26"}]},{"yearMonth":"2017 年 1 月","data":[{"title":"Angular 2 中的 HTTP 请求超时处理","pathname":"rxjs-http-timeout","create_time":"2017-01-16"},{"title":"关于时序攻击","pathname":"timing-atack","create_time":"2017-01-16"},{"title":"[译] Bluebird 高性能揭秘","pathname":"javascript-performance-fundamentals-make-bluebird-fast","create_time":"2017-01-12"}]},{"yearMonth":"2016 年 12 月","data":[{"title":"[译] React 中的 AJAX 请求:获取数据的方法与时机","pathname":"ajax-requests-in-react","create_time":"2016-12-07"},{"title":"前端界面 Modal 的控制","pathname":"accessible-modal","create_time":"2016-12-02"},{"title":"笔记:velocity 2016 第二天","pathname":"velocity-2016-day-2","create_time":"2016-12-02"},{"title":"笔记:velocity 2016 第一天","pathname":"velocity-2016-note-1","create_time":"2016-12-01"}]},{"yearMonth":"2016 年 11 月","data":[{"title":"[译] CSS 方法论的选择","pathname":"when-to-use-which-css-methodology","create_time":"2016-11-30"},{"title":"[译] 手把手教你写一个 Javascript 框架:项目结构","pathname":"nx-project-structure","create_time":"2016-11-20"},{"title":"[译] 手把手教你写一个 Javascript 框架:沙箱求值","pathname":"sandbox-code-evaluation","create_time":"2016-11-18"},{"title":"[译] 手把手教你写一个 Javascript 框架:执行调度","pathname":"execution-timing","create_time":"2016-11-14"},{"title":"[译] 手把手教你写一个 Javascript 框架:使用 ES6 Proxy 实现数据绑定","pathname":"es6-proxy-data-binding","create_time":"2016-11-14"},{"title":"[译] 手把手教你写一个 Javascript 框架:数据绑定","pathname":"data-bind-dirty-checking","create_time":"2016-11-14"},{"title":"笔记:IE 下透明度问题","pathname":"ie-filter","create_time":"2016-11-14"},{"title":"快来上钩哈哈哈","pathname":"fishing-for-spider","create_time":"2016-11-13"},{"title":"[译] 理解 Node.js 事件循环","pathname":"nodejs-event-loop","create_time":"2016-11-12"},{"title":"算法学习:冒泡排序","pathname":"algo-bubble-sort","create_time":"2016-11-09"},{"title":"算法学习:选择排序","pathname":"algo-selection-sort","create_time":"2016-11-06"},{"title":"[译] HTML 表单验证","pathname":"using-html-form-validation-in-pure-javascript","create_time":"2016-11-05"},{"title":"算法学习:插入排序","pathname":"algo-insertion-sort","create_time":"2016-11-02"}]},{"yearMonth":"2016 年 10 月","data":[{"title":"使用 jQuery.ajax 上传带文件的表单","pathname":"jquery-ajax-formdata","create_time":"2016-10-29"},{"title":"JavaScript Weekly 307 阅读笔记","pathname":"javascript-weekly-307","create_time":"2016-10-28"},{"title":"关于 setImmediate","pathname":"js-set-immediate","create_time":"2016-10-27"},{"title":"2016 年 10 月 27 日阅读笔记","pathname":"20161027-reading","create_time":"2016-10-27"},{"title":"关于前端常见算法面试题的一些思考","pathname":"front-end-interview-algo-questions","create_time":"2016-10-26"},{"title":"JavaScript Weekly 306 阅读笔记","pathname":"javascript-weekly-306-notes","create_time":"2016-10-21"},{"title":"[译] yarn 和 npm 命令行小抄","pathname":"npm-vs-yarn-cheat-sheet","create_time":"2016-10-19"}]},{"yearMonth":"2016 年 9 月","data":[{"title":"[译] 函数式 TypeScript","pathname":"functional-refactor-typescript","create_time":"2016-09-28"},{"title":"笔记:TypeScript 中引用全局变量","pathname":"ts-note-on-global-reference","create_time":"2016-09-08"},{"title":"[译] 让人倾倒的 11 个 npm trick","pathname":"eleven-npm-tricks-that-will-knock-your-wombat-socks-off","create_time":"2016-09-03"},{"title":"[译] HTTP 推送","pathname":"being-pushy","create_time":"2016-09-02"}]},{"yearMonth":"2016 年 8 月","data":[{"title":"聊聊 JavaScript Date 对象","pathname":"date-in-javascript","create_time":"2016-08-31"},{"title":"[译] 渐进增强的键盘导航","pathname":"better-keyboard-navigation-with-progressive-enhancement","create_time":"2016-08-30"},{"title":"[译] Fetch 请求的本地缓存","pathname":"cache-fetched-ajax-requests","create_time":"2016-08-27"},{"title":"[译] 渐进式 Web App 的离线存储","pathname":"offline-storage-for-progressive-web-apps","create_time":"2016-08-18"},{"title":"[译] WebAssembly  初尝","pathname":"build-your-first-thing-with-web-assembly","create_time":"2016-08-16"},{"title":"[译] 自动化、跨浏览器的 JavaScript 单元测试","pathname":"set-up-automated-cross-browser-javascript-unit-testing","create_time":"2016-08-15"},{"title":"[译] JavaScript  与函数式编程","pathname":"JavaScript-and-Functional-Programming","create_time":"2016-08-10"}]},{"yearMonth":"2016 年 7 月","data":[{"title":"[译] eBay:style & speed","pathname":"browse-ebay-with-style-and-speed-ebay","create_time":"2016-07-27"},{"title":"[译] Service Worker 生命周期","pathname":"the-service-worker-lifecycle","create_time":"2016-07-25"},{"title":"[译] 从发展历史理解 ES6 Module","pathname":"understanding-es6-modules-via-their-history","create_time":"2016-07-22"},{"title":"[译] 关于转译器 JavaScript 程序员需要知道的事","pathname":"javascript-transpilers-need-know","create_time":"2016-07-20"},{"title":"[译] 移动开发中的仿真器与模拟器","pathname":"how-do-mobile-emulators-even","create_time":"2016-07-19"},{"title":"[译] WebP 支持:超乎你想象","pathname":"webp-support","create_time":"2016-07-18"},{"title":"[译] HTTP2 Server Push 实践:单 Link  报头包含多资源场景","pathname":"http-2-server-push-with-multiple-assets-per-link-header","create_time":"2016-07-17"},{"title":"[译] Hybrid or Native: 适合工作的才是最好的","pathname":"hybrid-or-native-mobile-app-use-the-right-tool-for-the-job","create_time":"2016-07-15"},{"title":"[译] 给 Service Worker 开后门","pathname":"backdoor-service-worker","create_time":"2016-07-13"},{"title":"Node.js .sh scripts Manager","pathname":"Node.js-sh-scripts-Manager","create_time":"2016-07-12"},{"title":"判断资源并行加载完成的三种办法:计数、Promise及 $.Deferred","pathname":"when-are-all-resources-all-loaded","create_time":"2016-07-04"},{"title":"[译] 测试驱动开发:使用 Node.js 和 MongoDB 构建 Todo API","pathname":"todo-api-with-unit-test","create_time":"2016-07-04"}]},{"yearMonth":"2016 年 6 月","data":[{"title":"使用 ava 和 
1jsdom 测试前端界面","pathname":"test-with-ava-jsdom","create_time":"2016-06-29"},{"title":"[译] 防火墙背后的笔记:Web 设计在中国","pathname":"notes-from-behind-the-firewall-the-state-of-web-design-in-china","create_time":"2016-06-28"},{"title":"[译] 小两百行 JavaScript 打造 lambda 演算解释器","pathname":"writing-a-lambda-calculus-interpreter-in-javascript","create_time":"2016-06-27"},{"title":"[译] 无限滚动加载最佳实践","pathname":"infinite-scrolling-best-practices","create_time":"2016-06-27"},{"title":"关于JavaScript 函数传参","pathname":"javascript-argument","create_time":"2016-06-26"},{"title":"[译] Node.js 中的队列","pathname":"queues-in-node.js","create_time":"2016-06-25"},{"title":"[译] 客户端存储","pathname":"client-side-storage","create_time":"2016-06-25"},{"title":"[译] No WebSockets Over HTTP2","pathname":"no-websockets-over-http2","create_time":"2016-06-24"}]},{"yearMonth":"2016 年 4 月","data":[{"title":"react-native 开发 App 手记","pathname":"app-with-react-native","create_time":"2016-04-22"}]},{"yearMonth":"2016 年 3 月","data":[{"title":"近来在Firefox上遇到的一些坑","pathname":"problems-with-firefox","create_time":"2016-03-12"},{"title":"Chrome和Firefox下的网页截图","pathname":"screen-shot-upload","create_time":"2016-03-11"}]},{"yearMonth":"2016 年 1 月","data":[{"title":"异步场景下的 js 编程","pathname":"js-promise-slides","create_time":"2016-01-05"}]},{"yearMonth":"2015 年 8 月","data":[{"title":"关于移动端 rem 布局的一些总结","pathname":"about-rem-layout","create_time":"2015-08-31"}]},{"yearMonth":"2015 年 4 月","data":[{"title":"记一种水平垂直居中的办法","pathname":"vh-center-layout","create_time":"2015-04-29"}]},{"yearMonth":"2014 年 9 月","data":[{"title":"某易 2014 校招面试总结","pathname":"xease-campus-2014-note","create_time":"2014-09-24"},{"title":"某度 2014 年秋招前端笔试","pathname":"xdu-campus-recruitment-2014","create_time":"2014-09-21"}]}]'),v={class:"max-w-prose mx-auto px-6 py-10"},f={class:"text-lg font-semibold text-slate-900 dark:text-slate-100 mb-2 pb-2 border-b border-slate-200 dark:border-slate-700"},g={class:"font-normal text-slate-600 dark:text-slate-300 text-[0.9em]"},x={class:"list-none m-0 p-0"},k={class:"shrink-0 text-slate-600 dark:text-slate-300 text-[13px]"},J={__name:"archives",setup(w){const c=b;return d({title:"归档"}),(M,m)=>{const p=h;return i(),a("div",v,[e("article",null,[m[0]||(m[0]=e("h1",{class:"text-2xl font-bold text-slate-900 dark:text-slate-100 mb-8"},"归档",-1)),(i(!0),a(o,null,l(_(c),r=>(i(),a("div",{key:r.yearMonth,class:"mb-6"},[e("h3",f,[s(n(r.yearMonth)+" ",1),e("span",g,"("+n(r.data.length)+")",1)]),e("ul",x,[(i(!0),a(o,null,l(r.data,t=>(i(),a("li",{key:t.pathname,class:"flex justify-between items-baseline gap-4 py-2 border-b border-slate-100 dark:border-slate-800 last:border-b-0"},[u(p,{to:`/post/${t.pathname}`,title:t.title,class:"flex-1 min-w-0 overflow-hidden text-ellipsis whitespace-nowrap text-blue-600 dark:text-blue-400 no-underline hover:text-blue-800 dark:hover:text-blue-300 transition-colors"},{default:y(()=>[s(n(t.title),1)]),_:2},1032,["to","title"]),e("time",k,n(t.create_time),1)]))),128))])]))),128))])])}}};export{J as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.