原创 vue-cli3.0項目骨架屏加載

本文主要講述vue-cli3.0項目中如何使用骨架屏技術提高用戶體驗。效果圖如下: 文章是對Yinzhishan的簡書內容的實踐操作和整理,原文請戳前面鏈接。具體執行如下四步即可實現(本人親測有效): 1.添加vue-skele

原创 前端常用正則整理

自用備份,若參考,不負責其正確性! 字符驗證: 1.驗證漢字 \u4e00-\u9fa5]{0,}$ 2.英文和數字 ^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$ 用法實例: 1.正則提取數字 var

原创 apahce開啓gzip壓縮功能

我的網站漫島高高興興的上了雲,卻發現訪問速度慢的一匹,明明當初虛擬主機也是1核1G1m帶寬,現在服務器也是,不至於說網頁加載速度慢了快十倍了。優化,首先想到的是開啓apache的gzip壓縮功能。 Response Headers裏面

原创 apache配置ssl證書

最近上雲,將個人網站漫島的代碼從阿里雲的虛擬主機遷移到阿里雲的ECS服務器,中間給網站配置ssl證書的時候遇到一些麻煩,參照網上的方法均不起任何作用,可能我這個問題比較個性,自己花了兩天時間才解決,首先看下常規的SSL證書配置方案:

原创 tp5模型修改器不起作用

使用thinkphp5.0框架開發個人網站漫島時,在模型中進行數據庫的寫入時發現修改器並沒有起到任何作用,閱讀官方文檔也沒找到對應說明,最後在評論區找到解決方案,因此記錄: 開始我在模型存儲數據時使用的如下方式: public fun

原创 PHP接口返回特定狀態碼401等

我的個人網站漫島採用的是前後端分離,當用戶進行敏感操作且其token過期時,需要後臺接口返回特定的狀態碼401。然後前端使用axios的攔截器根據響應的狀態碼將用戶導入到對應的頁面。 後臺返回特定狀態碼我使用的是http_respon

原创 php@unlink刪除文件失敗原因

最近做我網站的更換頭像功能時,涉及到了PHP的文件上傳。 我採用的方案是用戶先上傳到服務器,服務器再上傳到阿里雲的OSS,中間會有一個把圖片臨時存儲到服務器的過程。於是在使用php的@unlink(刪除指定文件)方法時發現了刪除失敗的

原创 PHP防止用戶名重複(MD.13)

正在爲了創建漫島而學習PHP,今天在做引導用戶填寫自己暱稱的時候,需要保證用戶暱稱不會重複,講訴如何避免用戶暱稱的重複即是此文的目的。具體步驟如下: 1.在創建數據庫表的時候,對用戶暱稱nickname(下文均以此名代表用戶暱稱字段)

原创 tp5框架自動寫入時間戳(MD:12)

最近學習PHP,希望能給自己給自己的網站漫島做後端相關的開發。 在使用thinkphp5框架操作數據庫時,希望能自動寫入時間戳來記錄我的更新時間,需求簡單,對於初學者來說有幾個點我還是得記錄一下: 1.首先要確認的一點是,時間戳的自動

原创 對比javascript和PHP中的==比較符

最近PHP編碼時使用到==比較符,發現和JS有一些差別,做記錄防止混餚。 先看PHP中的例子: $a=0; $b='0str'; $c='1str'; if($a==$b){ echo true; }else{ echo fal

原创 PHP json_encode中文被編碼的解決方案

php給前端返回json數據時,其中的中文被編碼了。雖然前端在network的preview中查看瀏覽器自動轉碼後的結果,影響不是很大,但是看到原始的response數據還是有點不舒服,於是網上找到了一個解決方案,一行代碼。簡單記錄一

原创 Vue項目打包優化(MD.10)

好久不見,最近很忙,大家依然可以關注漫島的最新動態。 今天要說的是Vue項目的一些打包技巧,都是我在漫島使用過的,因爲我們沒錢買高配置服務器(目前還是個測試服務器),所以就只能把優化做到更優了。 隨着項目開發,上線包體積的增大,尤其是

原创 將html2canvas生成的canvas保存爲圖片

想要做網頁截圖保存或者是將頁面的某些html元素保存爲圖片的話,常用的插件就是html2canvas。插件的使用本身很簡單,這裏說的是如何將其生成的canvas保存爲圖片。 直接看代碼,簡潔靠譜我還親自幫你實踐了。 let oCard

原创 實戰解決小程序圖片加載問題

相較於web端或者H5開發,小程序本身在性能上弱很多(但用戶體驗上要好)。以前開發時服務器性能過剩在那裏幫你撐着臉面,你對自己的代碼質量和編程習慣心裏沒數,小程序就是一面鏡子。 廢話少說,要解決的問題是,小程序加載圖片閃爍,漸漸出現,

原创 小程序setData方法修改data中對象或數組的屬性值

開發微信小程序時,使用setData修改data中數據時,針對各種情況的解決方案如下: //示例data: data:{ code:'9527', baseInfo:{ name:'夏爾', age:19 }, fam