原创 koa淺析

koa功能劃分 koa作爲base node.js的下一代web應用框架,其具有簡潔、健壯、富有表現力等特點。由Express幕後的原班人馬打造,充分利用async + await + promise的特定,有效的規避了回調函數,

原创 React開發踩坑總結(持續更新)

this迷失 由於React開發的靈活性,在組件屬性傳遞時,操作函數也常常作爲屬性被傳遞進去。由於未使用使用箭頭函數造成函數在執行時根據上下文確定this指針的值,常常造成this is undefined的問題。 import

原创 VNode簡介

VNode說明&作用 VNode是什麼 VNode是JavaScript對象。VNode表示Virtual DOM,用JavaScript對象來描述真實的DOM把DOM標籤,屬性,內容都變成對象的屬性。就像使用JavaScript

原创 JavaScript基礎:創建自定義類型的對象

字面量模式 在使用JavaScript進行代碼書寫時,創建對象的方式中首先推薦的模式就是字面量方式進行創建。 const person = { name: 'jade', age: 5 } 存在的問題: 如果僅僅是創建單個對

原创 JSONP原理與實現

JSONP的原理 JSONP即是JSON with padding(填充式JSON或參數式JSON)的簡寫。是由兩部分組成:回調函數和數據。回調函數是當響應到來時應該在頁面中調用的函數。回調函數的名字一般是在請求中指定的。而數據就

原创 nodemon配置和使用

簡介 nodemon is a tool that helps develop node.js based applications by automatically restarting the node applicatio

原创 ES6 Class語法

簡介 JavaScript作爲一門弱類型的解釋性語言,其既可以滿足面向對象編程的需要,也可以實踐函數式編程範式。隨着ES版本的演進,JavaScript的功能越來越豐富,書寫起來也越來越舒服。其中ES6新增的Class語法也使得J

原创 ES的裝飾器

JavaScript中的裝飾器 JavaScript中的裝飾器是這樣的。 @classDecorator class Person { @methodDecorator walk () {} } Decorators ma

原创 不可不知的react模糊搜索與結果高亮

前言 隨着vue、react等框架等廣泛使用,前端對數據處理的需求越來越多,處理的數據量也越來越大。今天我就接到這麼一個需求,爲了減少對後端的請求次數,提高性能,前端實現對數據進行輕量的模糊搜索與檢索結果的高亮顯示。talk is

原创 巧用 curl

初識 curl curl是命令行工具函數,是對web服務器發起請求。curl使用純熟是完全可以取代圖形化界面工具postman的。做爲前端的小白,初次結識curl還是因爲一次項目發佈問題。node中間層項目開發完成之後,走發佈流程

原创 不可忽略的空格

問題描述 富文本編輯器中需要實現一個可編輯的導航樹,在上線運行時客戶反饋其設置的導航樹的空格不起作用。具體問題如下所示: 由此可以看到HTML文本節點與渲染展示的內容不同,造成了用戶直觀感受到的輸入空格不起作用。 問題原因 空格

原创 import按需加載react類組件時引發的bug

問題描述 由於項目工程特別大,使用了import函數與@loadable/component結合進行組件的動態加載,從而實現Code Splitting的效果。 如下是一個測試組件的代碼: // 這是一個組件 import Rea

原创 名符其實的react下一代狀態管理器hox

前言 自從React16版本發佈Hooks以來,大家紛紛上車嚐鮮。毫無疑問,Hooks在一定程度上解決了組件間功能和邏輯複用的問題,在組件間的邏輯的封裝和複用確實真香,但Hooks在數據狀態的共享方法略有不足,雖然可以使用useR

原创 聊一聊Cookie那些事兒

前言 最近由於Chrome 80+對第三方cookie進行了限制,雖然沒有像最新版的safari和Firefox一樣默認禁止第三方cookie,但是離完全禁止第三方cookie也不遠。但因此也給我們前端開發人員帶來了一些影響,第三

原创 Chrome 80跨域cookie無法攜帶

什麼是cookie HTTP是無狀態協議,也就是說服務器完全不清楚是否是同一位用戶在訪問。在最開始HTTP協議只是做爲共享文本內容而存在是可行的,但是隨着Web發展,Web內容的豐富化,必須需要有一種技術去記錄HTTP協議的用戶狀