AST(抽象語法樹) 為什麼要談AST? 如果你查看目前任何主流的項目中的devDependencies,會發現前些年的不計其數的插件誕生。我們歸納一下有:ES6轉譯、代碼壓縮、css預處理器、eslint、prettier等。這些模塊很多都不會用到生產環境,但是它們在開發環境中起到很重要的作用,這些工具的誕生都是建立在了AST這個巨人的肩膀上。 什麼是AST? It is a hierarch
EasySwoole 發佈 v3.4.6 部分組件更新 更新內容 此次更新我們更新了部分組件的功能,並且修復部分組件的 bug,繼續提升了 EasySwoole 的穩定性。 發佈組件 easyswoole/component v2.3.1 版本; 發佈組件 easyswoole/rpc v5.0.5 版本; 發佈組件 easyswoole/pay v1.3.0 版本; 關於以上組件的具體
環境 Linux/Ubuntu20.04LTS IntelliJ IDEA Community Editon 2021.1 maven 3.6.3 jetty 11.0.5 struts2 2.5.22 瀏覽器插件 Config Browser Plugin 是一個簡單的工具,可幫助在運行時查看應用程序的配置。 這個插件應該只在開發階段使用,並且應該嚴格限制對它的訪問! 特徵 加
VForm是一個基於Vue 2.0和Element UI的高級表單組件,定位為前端開發人員提供快速搭建表單、實現表單交互和數據收集的功能。 VForm全稱為Variant Form,寓意為靈活的、動態的、多樣化的Vue表單組件。 VForm提供了豐富的組件屬性設置、表單交互事件和API方法,點此體驗:VForm體驗 VForm功能一覽: =======================
OpenShift Serverless 是一項基於開源 Knative 項目的服務,它提供了一個企業級無服務器平台,可以使開發人員能夠在 OpenShift 上按需部署和運行應用程序,大幅簡化應用的開發和運行,減輕了手動配置擴張基礎架構的負擔。 用“事件”觸發容器應用: 應用程序代碼可與其運行時一起打包到容器中,當事件觸發應用程序容器時,無服務器功能會自動啓動這些容器。應用程序可由各種事件源觸
Object、object和{}(對象類型) 不知道是不是有很多兄弟和我一樣,在進行typescript的前端項目開發時,總是不能很好地使用對象類型;有時會定義為Object,有時又會定義為object,但是大多時候我們會混淆兩者。 就拿我個人而言,對於對象我都下意識的定義為object,運氣好呢編譯通過了(開心😄),運氣差點呢vscode還有提示修復能,一鍵修復也是記極好了。但是,咱也不是完
關注 EmacsTalk 收穫更多 Emacs 使用技巧 在第五期節目裏推薦過 Raycast 這個神器,之前知道它可以直接執行腳本,但一直沒嘗試過,最近發現它提供了一個 script-commands 倉庫,裏面整理了一些常用的腳本,比如清空廢紙簍、刷新 DNS 等,比較實用。 但這個倉庫的腳本非常多,我需要的只是其中很小一部分,所以需要一種方式來便捷地在兩個目錄間拷貝文件(稱為 src 與 d
協議官網 在傳統的客户端-服務器身份驗證模型中,客户端通過使用資源所有者的憑據向服務器進行身份驗證來請求服務器上的訪問受限資源(受保護資源)。 為了向第三方應用程序提供對受限資源的訪問,資源所有者與第三方共享其憑證。這產生了若干問題和限制。 第三方應用程序需要存儲資源所有者的憑據以備將來使用,通常是明文密碼。 要求服務器支持密碼認證,儘管密碼存在固有的安全弱點。 第三方應用程序獲得對資源所
問題:Where to configure session timeout in Spartacus 答案 我假設您使用 Hybris OAuth 服務器的默認身份驗證流程(密碼流程)。 在這種情況下,會話長度是通過後台的 OAuth 客户端設置來控制的。 但是,要知道會話何時到期,您可以檢查令牌有效負載 (AuthStorageService.getToken)。屬性之一是到期時間,可用於瞭解會
簡介 上一節我們講解了netty中的Channel,知道了channel是事件處理器和外部聯通的橋樑。今天本文將會詳細講解netty的剩下幾個非常總要的部分Event、Handler和PipeLine。 ChannelPipeline pipeLine是連接Channel和handler的橋樑,它實際上是一個filter的實現,用於控制其中handler的處理方式。 當一個channel被創建的時
一、背景與簡介 在傳統的 PC Web 前端開發中,瀏覽器為開發者提供了體驗良好、功能豐富且強大的開發調試工具,比如常見的 Chrome devtools 等,這些調試工具極大的方便了開發者,它們普遍提供查看頁面結構、監聽網絡請求、管理本地數據存儲、debugger 代碼、使用 Console 快速顯示數據等功能。 但是在近幾年興起的微信小程序的前端開發中,卻少有類似的體驗和功能對標的開發調試工
carbon 是一個輕量級、語義化、對開發者友好的golang時間處理庫,支持鏈式調用。 目前已被 awesome-go 收錄,如果您覺得不錯,請給個star吧 github:github.com/golang-module/carbon gitee:gitee.com/go-package/carbon 更新日誌 優化多語言支持,無需再將lang目錄複製到項目目錄下 移除SetDir()方
OAuth是一種授權機制。OAuth過程中,系統會詢問數據所有者,是否同意授權第三方應用進入系統獲取這些數據,同意,則系統將產生一個短期的進入令牌(token),用來代替密碼,供第三方應用使用。 # OAuth流程(假設你的站點是A網站) 1. 用户事件觸發(一般點擊事件)跳轉,到 Github 2. Github 要求用户登錄,並詢問用户是同意 Github 下放授權碼給 A 網站 3. 用户同
本文通過簡單介紹如何利用ApiPost調試接口和快速的生成接口文檔,讓您初步體驗ApiPost的魅力! 1. API寫完想要測試?試試模擬發送一次請求 新建接口,我想模擬發送請求如下 curl --location --request POST 'https://echo.apipost.cn/get.php?c=Courseid=1000' \ --header 'User-Agent: Api
1.隨記 service 隨記 流量負載組件 Service 4層網絡負載 TCP UDP Ingress 7層網絡負載 Http https kube-proxy 進程 service是一個概念,真正起作用的是kube-proxy ,當創建一個service時候,api-server會將對應的service信息保存到etcd中,kube-proxy監聽etcd的變化 生成對應的訪問規則
1.問題 deploy.yaml apiVersion: apps/v1 kind: Deployment metadata: name: service-deployment namespace: dev spec: replicas: 3 selector: matchLabels: app: nginx-pod template: me
關注前端小謳,閲讀更多原創技術文章 相關代碼 → 10.9 函數內部 ES5 中函數內部有 2 個特殊對象 arguments 和 this,1 個內部屬性 caller ES6 新增new.target屬性 10.9.1 arguments arguments是一個類數組對象,包含調用函數時傳入的所有參數 只有以funciton關鍵字定義函數時才會有arguments對象(
閉包 作用域應用的特殊場景有兩種表現 函數作為參數被傳遞 函數作為返回值被返回 //函數作為返回值 function create() { const a = 100 return function () { console.log(a) } } const fn = create() const a = 200 fn() // 100 //
interface 是 Go 語言最精髓的特性之一,一直以來想寫一篇關於 interface 的文章,但是一直沒敢寫。持續幾年之久,還是斗膽總結下。 Concrete types struct 定義數據的內存佈局。一些早期建議將方法包含在 struct 中,但是被放棄了。相反,方法如普通函數一樣聲明在類型之外。描述 (data) 和行為 (methods) 是獨立且正交的。 一方面,方法只是一個帶
在某些場景下我們需要同時從多個通道接收數據。通道在接收數據時,如果沒有數據可以接收將會發生阻塞,而select就可以同時監聽一個或多個channel,直到其中一個channel準備好。 select的使用類似於switch語句,它有一系列case分支和一個默認的分支。每個case會對應一個通道的通信(接收或發送)過程。select會一直等待,直到某個case的通信操作完成時,就會執行case分支對
創建項目的時候報錯 試過網上改淘寶鏡像的法子不行 最後使用npx 成功了 npx create-react-app todo-list npx 會自動查找當前依賴包中的可執行文件,如果找不到,就會去 PATH 裏找。如果依然找不到,就會幫你安裝。 npx 甚至支持運行遠程倉庫的可執行文件。 npx解釋:https://www.jianshu.com/p/684..
簡介 我們常用瀏覽器來訪問web頁面得到相關的信息,通常來説使用的都是HTTP或者HTTPS協議,這些協議的本質上都是IO,客户端的請求就是In,服務器的返回就是Out。但是在目前的協議框架中,並不能完全滿足我們所有的需求。比如使用HTTP下載大文件,可能需要長連接等待等。 我們也知道IO方式有多種多樣的,包括同步IO,異步IO,阻塞IO和非阻塞IO等。不同的IO方式其性能也是不同的,而ne
最近有個朋友面試,面試官問了個奇葩的問題,也就是我寫在標題上的這個問題。 能問出這個問題,面試官應該對 React 不是很瞭解,也是可能是看到面試者簡歷裏面有寫過自己熟悉 React,面試官想通過這個問題來判斷面試者是不是真的熟悉 React 🤣。 面試官的問法是否正確? 面試官的問題是,setState 是一個宏任務還是微任務,那麼在他的認知裏,setState 肯定是一個異步操作。為了判斷
前言 探索Redux 和 Mobx 原理從我做起,從這篇文章看起! 所以 一位程序員的職業生涯大約十年,只有人壽命的十分之一。前端項目只是你生活工作的一部分,而你卻是它的全部,你是他的靈魂。請放下長時間的遊戲、工作時的摸魚。多學習來以最完美的狀態好好陪你項目! 正文 這篇文章將會詳細分析 Redux 和 Mobx 核心 Api, 看一遍學不會就看兩次、三次、手寫一次! 知識點 Redux 基本