自從宣告 IE 封印解除,我一改過去儘量用古老寫法以免惹 IE 生氣的保守心態,積極學習現代 JavaScript。猶如鄉巴佬進城,連看見自動販賣機也會大讚科技好進步。對專業前端開發人員來說,2022 年還在介紹這種基本常識簡直笑死,但心想「總有比我更晚解封的人」,還是拋開羞恥心(謎:不要提那種你沒...

昨天分享透過 vue3-sfc-loader 載入 .vue 檔案的解決方案,讓輕前端也能輕鬆應用 SFC 元件實現氣刀體一致,但仍有美中不足之處。 首先,vue3-sfc-loader 的原理是把 Vue CLI 開發階段用的 SFC 編譯程式搬到瀏覽器端( vue3-sfc-loader.js ...

前幾天提到在 ASP.NET 使用輕前端 整合 Vue.js 做 MVVM,若遇到伺服端元件輸出 script/style 的注意事項。FB 留言區 Died Liu 分享透過 defineAsyncComponent 方法載入 .vue 元件檔的做法,不需要 npm、webpack 也能享受用 ....

昨天分享 .NET 4.5.2 專案參照 4.6.1 專案,只有警告訊息但編譯會出錯的茶包,靠將 A 專案升為 4.6.1+ 解決,但愈想愈不對... 若低版本 .NET 參照高版本註定無法運作,為什麼被歸為警告而非錯誤?而 .NET 4.X 採「就地更新」(In-Place Update)政策,在...

某古老專案建置時,.nuget\nuget.exe 出現以下錯誤訊息: 用戶端與伺服器無法溝通,因為它們沒有公用的演算法。 The client and server cannot communicate, because they do not possess a common algorith...

我習慣將常用功能包成套件讓各專案共享。以昨天介紹的 QR Code Tag Helper 為例,通常會跟一堆網頁功能放進某個開發工具箱專案,編譯成 NuGet Package 方便各專案引用,而 ASP.NET Core 讓我們能輕易實現這個理想,只要像下圖這樣: 建立一個類別程式庫專案 Shar...

這兩天被一則「7-Zip Windows 程式存在安全漏洞」的資安消息洗版(參考:7-Zip Windows App漏洞讓攻擊者取得管理員權限 by iThome),代號 Kagancapar 的土耳其研究員展示了「從 7-Zip 開啟說明檔,再將檔案拖到說明窗視可讓一般使用者取得管理者權限」的安全...

我打算將之前研究用 Minimal API 寫桌面小工具的設計包成元件,把自動尋找可用 HTTP Port 跟啟動時帶出預設瀏覽器、網頁關閉自動結束等機制包成擴充函式加入網站,未來 Program.cs 加一行 app.RunAsDesktopTool(); 即可取代原本查詢 URL、 啟動瀏覽器、...

改寫 .NET Core 之後,我都盡量改用 System.Text.Json處理 JSON,做個不守舊,擁抱新時代的老人。System.Text.Json 主打高效能,雖然功能跟擴充性比不上 Json.NET 完整,但身為 .NET 內建元件,不用擔心支援性及整合度,預期會持續強化(例如:.NET...

用 LINE 貼圖時我有個困擾,記憶中有張超貼切的圖,但我永遠記不住它來自哪一組,作者給的關鍵字又匹配不上,只好一組一組打開來找,但最絕的是,往往全部找完一輪也沒看到,遇上傳說中的「貼圖鬼遮眼」,最後隨便找張貼圖了事。 為了解決這個困擾,我開了 Side Project,用 ASP.NET Core...

前幾天幫同事看問題,要在 JavaScript 偵測 location.href 是否為 / 字元結尾,看到 Visual Studio 自動提示了 endsWith() 函式,大驚! JavaScript 不知何時早已內建 startsWith、endsWith (Chrome 41 就有,目前版...