一、計算屬性
我們可以將同一函式定義為乙個方法而不是乙個計算屬性,兩種方式的最終結果確實是完全相同的。然而,不同的是計算屬性是基於他們的依賴進行快取的,只要相關依賴發生改變時
他們才會重新求值。這就意味著多次訪問計算屬性會立即返回之前的計算結果,而不必再次執行函式;
相比之下,每當觸發重新渲染時,呼叫方法將總會再次執行函式;
我們為什麼需要快取?假設我們有乙個效能開銷比較大的計算屬性a,他需要遍歷乙個巨大的陣列並做大量的計算。然後我們可能有其他的計算屬性依賴於a。如果沒有快取,我們將不可避免額多次
執行a的getter!如果你不希望有快取,請用方法來替代;
二、async
使用async語法開發業務,**以更整潔優雅的方式替代callback 與 promise
1)如何配置async語法的babel編譯支援
當前應用平台本身僅支援es5的語法,所以要支援他必須借助bebel之類的語法分析轉換工具,同時要在**中注入polyfill;
//指令碼:regenerator.js
//注意:僅用於注入類庫函式,不允許儲存頁面元件等資料
const injectref = object.getprototypeof(global)||global;
//注入regeneratorruntime
injectref.regeneratorruntime = require('@babel/runtime/regenerator');
//如果使用hap-toolkit版本低於0.0.38(babel版本低於7),則按下面的方式引入 injectref.regeneratorruntime = require('babel-runtime/regenerator')
2)使用async ,await語法
onready())
}
options.fail = function(data,code) );
}
nativefetch.fetch(options);
})
return p1
}
}
export
呼叫async版本的fetch介面的示例**如下:
Stream應用注意點
1.stream 的類層次 2.stream 的狀態 iostate io 格式化flag fmtflags 檔案開啟模式 openmode 檔案定位標記 seekdir 3.stream 中failbit 和 badbit 的差別。failbit 用於讀取時格式不符的情況。注意,在格式不符時,st...
ERP應用三點注意
人生的道路上,尋找一位 執子之手與子攜老 的伴侶,是最大的幸福 在茫茫的市場中尋找一家適合自己的資訊化服務提供商合作也是難得的際遇。國內許多大的公司實現了資訊化管理,並取得了很好的效果,中 小型公 司也不甘落後,緊隨其後的發展資訊化。目前,中 小型企業佔到市場數量的 60 以上,幾大企業資訊化軟體提...
android應用UI布局 注意點
凡是linearlayout所能構建的布局,constraintlayout幾乎都能構建,而不會影響效能,因此您應該嘗試將布局轉換為 constraintlayout。然後,您可以使用約束鏈定義加權布局。使用constraintlayout時,不得使用match parent,而是應將尺寸設為0dp...