原创 react 在creact-react-app中屏蔽console.log、解決moment.js體積過大

安裝 craco $ yarn add @craco/craco # OR $ npm install @craco/craco --save 配置文檔參考 https://github.com/gsoft-inc/craco/blob/

原创 React 自定義hook 通過 url search 來管理 state 的 Hook。

1、使用 react-router useUrlSearchState 使用 react-router 6.x 版本來管理路由 如需使用5.x使用 useHistory 替換 useNavigate /* eslint-disable

原创 React自定義hook 給異步函數增加競態鎖,防止併發執行。

useLockCallback 和 useCallback用法一致,使用ref標記防止併發執行 import { useCallback, useRef } from 'react'; export default function

原创 create-react-app Uncaught ReferenceError: process is not defined

create-react-app 創建的項目初次運行時沒有問題,更改代碼後保存自動熱更新時出現 process is not defined 並出現iframe,阻止交互。刷新後問題消失 定位問題發現是react-dev-utils 的

原创 javascript rsa 加密,實現RSA_PKCS1_PADDING 加密

import crypto from 'crypto'; function rsaEncrypt(message: string) { const publicKey = '-----BEGIN PUBLIC KEY-----**

原创 react 在creact-react-app中屏蔽console.log

安裝 craco $ yarn add @craco/craco # OR $ npm install @craco/craco --save 配置文檔參考 https://github.com/gsoft-inc/craco/blob/

原创 pm2 命令

$ pm2 start app.js //啓動app.js應用程序 $ pm2 start app.js -i 4 # cluster mode 模式啓動4個app.js的應用實例 # 4

原创 React 自定義hooks 解決Can't perform a React state update on an unmounted component.

在react開發中經常會經常會碰到這種警告:Warning: Can't perform a React state update on an unmounted component. This is a no-op, but it ind

原创 React Context的使用 React Context能不能取代Redux?

官方給的解釋如下 在一個典型的 React 應用中,數據是通過 props 屬性自上而下(由父及子)進行傳遞的,但這種做法對於某些類型的屬性而言是極其繁瑣的(例如:地區偏好,UI 主題),這些屬性是應用程序中許多組件都需要的。Contex

原创 SectionList 調用scrollToOffset方法

SectionList是沒有提供scrollToOffset方法的, 只提供了scrollToLocation方法,但有時我們需要SectionList滾動到固定的某一位置。 翻看源碼 我們可以看到在SectionList內部是使

原创 ReactNative 封裝JS錯誤捕獲,轉發到釘釘羣

我們在debug模式App發生錯誤會出現紅屏,很容易就可以找到錯誤原因 在生產環境用戶手中發生錯誤會直接閃退,並且我們也不知道發生了什麼很不利於錯誤排查。這時我們需要錯誤上報,用於錯誤排查 官方提供了ErrorUtils用來解析錯誤處理

原创 ReactNative 在release包中屏蔽console.log

一個小小的優化點,點滴積累。 重寫JavaScript的console.log方法 //重寫console.log方法 console.log = (function (logFunc) { return function () {

原创 React Native 設置項目字體不隨手機字體變化

項目不想讓App字體隨着手機字體的變化而變化 從官網上看無論是Text還是TextInput屬性都有一個共同的屬性allowFontScaling默認爲true,每個都設置太麻煩了,只需在index.js文件如下操作 import '

原创 redux 如何在純js文件訪問store的的state

redux 如何在純js文件訪問store的的state,在一個普通js文件中拿到store 示例如下在創建store的時候使用export導出 在js文件使用getState() 獲取store的state export const

原创 CocoaPods換源

對於舊版的 CocoaPods 可以使用如下方法使用 tuna 的鏡像: pod repo remove master pod repo add master https://mirrors.tuna.tsinghua.edu.cn/git