摘要:不直接正題一將公共方法綁定到上單個綁定注意公共函數的名字不要重復,否則覆蓋多個綁定,文件綁定需要綁定的函數由文件出來二擴展,修改生命周期函數這里必須使用不可以使用箭頭函數,否則指向錯誤擴展函數在是當前實例上下文中執行,所以當前的為當前實例如
不BB,直接正題
一. 將公共方法綁定到Page上
單個綁定
const oldPage = Page Page = function(app) { // 注意公共函數的名字不要重復,否則覆蓋 app.util = function() {} return oldPage(app) }
多個綁定,文件綁定
const util = require("./util.js"); // 需要綁定的函數由util文件exports出來 const oldPage = Page Page = function(app) { let newPage = Object.assign({}, util, app) return oldPage(newPage) }二. 擴展,修改生命周期函數
const oldPage = Page Page = function(app) { app.onLoad = function(options) { // 這里必須使用function, 不可以使用箭頭函數, 否則this指向錯誤 console.log("擴展onLoad"); // onLoad函數在是當前page實例上下文中執行,所以當前的this為當前page實例 // 如果不使用call來硬綁定,而是直接app.onLoad(),那么onLoad里的this將為app這個對象 // 即我們正常在page.js里Page(app) 括號里面我們自己寫的page對象 if(typeof app.onLoad === "function") { app.onLoad.call(this, options); } } return oldPage(app) }
ps.想更系統的了解js關于this的知識可以戳這里
三. 使用我自己寫的時候,將自定義的內容多帶帶封裝到一個js文件中,然后在app.js中引用這個文件即可
require("./init.js"); //引用即可 App({ onLaunch: function (options) { } })
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/97328.html
摘要:不直接正題一將公共方法綁定到上單個綁定注意公共函數的名字不要重復,否則覆蓋多個綁定,文件綁定需要綁定的函數由文件出來二擴展,修改生命周期函數這里必須使用不可以使用箭頭函數,否則指向錯誤擴展函數在是當前實例上下文中執行,所以當前的為當前實例如 不BB,直接正題 一. 將公共方法綁定到Page上 單個綁定 const oldPage = Page Page = function(app...
摘要:今天,為了讓大家的項目優雅升級,快速接入,給你帶來一份豐盛的遷移指南目錄結構和微信小程序一樣,包含一個描述整體程序的和多個描述各自頁面的。 cml 作為真正讓一套代碼運行多端的框架,提供標準的MVVM模式,統一開發各類終端。 同時,擁有各端獨立的 運行時框架(runtime)、數據管理(store)、組件庫(ui)、接口(api)。 此外,cml在跨端能力加強、能力統一、表現一致等方面...
摘要:自定義組件觸發的時候。使用外部樣式表在最上方引入文件,微信小程序的路徑一個大坑,接著在引入即可。 好吧,突然發現學不完了,一下子,那就分開吧,由于時間太久,直接重新大致復習了一下 微信小程序自定義組件微信小程序支持自定義組件下方的目錄showImg(https://melovemingming-1253878077.cos.ap-chengdu.myqcloud.com/blog-im...
閱讀 954·2019-08-30 15:55
閱讀 551·2019-08-26 13:56
閱讀 2080·2019-08-26 12:23
閱讀 3295·2019-08-26 10:29
閱讀 600·2019-08-26 10:17
閱讀 2868·2019-08-23 16:53
閱讀 697·2019-08-23 15:55
閱讀 2814·2019-08-23 14:25