原创 告別程序媛生涯。

是的,不寫代碼了,拿到了國企項目經理的offer。入行五年,我很慚愧自己並沒能成爲那些我崇拜的人,沒能入職大廠月薪幾十K光環加身。也不是沒有去嘗試過,只不過我的水平實在太一般了。回首這些年,也沒能特別拿的出手的項目。唯一能拿出來說的,大概就

原创 公衆號項目在iphone上無法調起微信掃一掃功能

掃一掃功能是按着微信開放平臺中的步驟一步一步走下來的,集成之後在測試環境下所有功能一切正常。 然而項目上線之後,用戶開始反饋無法調起掃一掃功能。嘗試了很久之後發現,同一套代碼,只有 iOS 手機是無法調起掃一掃,甚至連 debug 的彈窗都

原创 關於vue-pdf無法顯示pdf合同填充內容

流程如上圖。使用vue-pdf組件無法顯示完整的合同的內容,所有填充的用戶分期數據全都是空。然而單獨在瀏覽器中打開pdf內容又是完整的,百思不得其解。 翻閱了很多資料,有說在組件目錄下pdfjsWrapper.js文件中註釋掉一行代碼an

原创 webpack 創建vue項目

一、npm 安裝 nodejs的下載安裝步驟這裏不贅述,直接去官網。安裝完成後直接查看 node 和 npm 的版本。 node -v npm -v 大家都知道國內直接使用npm 的官方鏡像是非常慢的,這裏推薦使用淘寶 npm 鏡像,這樣

原创 Element組件庫踩過的坑(持續更新...)

(ps:客戶端剛轉爲前端的一枚小菜雞,僅以此文記錄項目中使用過的element組件經驗及某些坑。Let‘s beigin...) el-select 選擇框 <!-- 選項數據是固定寫死的 --> <el-select v-m

原创 分享--批量修改一個方法內的變量名

替換字符串有兩種用的比較多的方法,如下圖。 Command + 4 直接全局搜索整個項目並替換; Command + f 搜索當前文件內並替換 那如果在一個方法內,想替換某個變量名,但是又不想一遍一遍去修改。(假使頁

原创 關於 UITableViewCell 的 indentationLevel

UITableViewCell 的 textLabel是有一個默認左邊距爲10px的。實際上,這是由indentationLevel 和 indentationWidth 控制的緣故。indentationLevel 默認爲0,inden

原创 獲取App冷啓動所耗時長

在App性能優化中,有一塊就是啓動時間的優化。那如何獲取App冷啓動所需要的時間呢? 找到 Edit scheme -> Run -> Auguments 將環境變量 DYLD_PRINT_STATISTICS 設爲 1,如下圖,然後運行。

原创 關於Xcode Simulator無法啓動的原因

前幾天爲了清理Xcode緩存,誤刪了文件,編譯時仍然有一堆模擬器可以選擇,但是卻無法啓動模擬器。 先是Command + R後等待一段時間報出超時錯誤。 在應用程序中找到Xcode,打開包內容,找到Developer-->Applicat

原创 使用 iconfont 替換 Assets 裏的圖標資源

我們一般對 App 的體積大小會有一定的要求,一般會先從圖標資源着手。這邊推薦兩個壓縮圖標的網站,不會影響畫質,也不會變形或模糊。 Optimizilla img.top 不過今天主要介紹的是iconfont,像使用字體一樣的使用圖標。

原创 解決 tableview 刷新閃一下或抖動的問題

我們知道 tableview 刷新有分全局刷新和指定區域刷新。 全局刷新- (void)reloadData; 指定區域刷新有以下兩個方法。 - (void)reloadRowsAtIndexPaths:(NSArray<NS

原创 關於 UITableView 的 willDisplayCell

willDisplayCell 是 UITableView 的一個代理方法,自定義顯示的方法一共有如上幾個。說到willDisplayCell,很多人會把它和cellForRowAtIndexPath做對比。 通過打斷點發現,table

原创 NSScanner 過濾字符串

在使用<ContactsUI/ContactsUI.h>框架獲取通訊錄手機號碼時,不同的 iOS 系統最後得到的手機號碼也不同。有的是xxx-xxxx-xxxx,有的是 xxx xxxx xxxx。爲了得到有效的手機號碼,可以用正則過濾字符

原创 iOS中的GZIP壓縮

項目中有個需求要上傳用戶的很多信息,考慮到接口響應速度後端同學提出了要對數據進行GZIP壓縮。 關於iOS端的GZIP壓縮,這是我目前在github上找到的star數最多的一個。GZIP github地址。 手動導入的時候,記得在Targ

原创 storyboard中的約束優先級

在Masonary中也可以設置約束的優先級,如make.left.equalTo(weakSelf.view.mas_left).offset(20).priority(250)中的priority。 在Storyboard中也可以,舉個🌰