原创 React 之 錯誤邊界

默認情況下,若一個組件在渲染期間(render)發生錯誤,會導致整個組件樹全部被卸載 錯誤邊界:是一個組件,該組件會捕獲到渲染期間(render)子組件發生的錯誤,並有能力阻止錯誤繼續傳播 組件中添加捕獲錯誤 1.編寫生命週期函數

原创 React - context

context 1.組件創建上下文之後,上下文中的數據會被所有的後代組件共享 2.組件依賴上下文,會導致組建不再純粹依賴state和props 舊的api 創建上下文 只有類組件纔可以創建上下文 1.給類組件書寫靜態屬性child

原创 vue 中 input v-model中的坑 及 限制number的長度

v-model.number 存在的坑 <input type="number" v-model='order'> //在輸入值 在輸出的時候會被轉換爲string類型 想要輸入的內容依然是數字 <input type="num

原创 深度克隆(deepclone)

深度克隆(deepclone) 深度克隆方法,返回一個新的克隆對象 這裏得說明深拷貝與錢拷貝的區別,淺拷貝是複製一個對象的引用,深拷貝是chone一個新的對象,與原對象有着不同的內存地址 一 . 補充說明,如何判斷 原始值 和 *

原创 移動端 頁面適配 原生js及lib-flexible 插件

1.js 原生 ;(function(win, doc) { change() function change() { var remSize = window.innerWidth / 7.5 || 50 /*設

原创 React - ref

reference 引用 function A (){ return (<h1>組件AAA</h1>) } <A ref="comA" /> // 不可這樣使用,但是函數組件內部是可以使用ref的 過時方式(不要使

原创 React 之 PureComponent

用於避免重複渲染(執行render函數),提高效率 以下面的示例: // taskContainer 組件 class TaskContainer extends Component { state = { task

原创 快應用 -- canvas

快應用的canvas 是由canvas組件和渲染腳本組成的 1 canvas 組件 不支持屬性width 、height ,通過style 設置 width(默認值 0 )和 height(默認值 0 ) background-

原创 React 之 Render Props

有時候,某些組建的各種功能及其處理邏輯幾乎完全相同,只是顯示的界面不一樣,建議下面的方式選擇其一來解決重複代碼的問題(橫切關注點) 實現這兩個組建,我們通常的寫法是: // MoveBox class MoveBox exten

原创 node 下載圖片到本地

圖片下載 一.需求 1.json文件刷選出imageUrl 2.下載的圖片必須保存載與json文件同名的文件夾中 3.將json文件中原網絡地址改爲json文件本地路徑 二.分析 1. 採用node 2.獲取存儲數據data文件夾

原创 v-show和v-if 多級菜單

<div id="app"> <tree :datalist='treeData'></tree> </div> <script> const treeData = [ {

原创 vue實現日曆demo

head要先引入vue: <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> html: <div id="app"> <div c

原创 模擬jquery原理

;(function() { function JQuery(selector) { return new JQuery.prototype.init(selector) }

原创 判斷原始值和引用值 及深度克隆

判斷屬性是原始值還是引用值 原始值:String Number fucntion Boolean undefined 引用值:Object Array Null 判斷方法 typeOf //引用值 object 如果是引用值

原创 js物體運動

1.物體勻速運動 let div = document.getElementsByTagName('div')[0], btns = document.getElementsByTagName('button')