Heim  >  Artikel  >  WeChat-Applet  >  Inhaltsanalyse des WeChat-Applet-Seitenkonstruktors und der Lebenszyklusfunktion (mit Code)

Inhaltsanalyse des WeChat-Applet-Seitenkonstruktors und der Lebenszyklusfunktion (mit Code)

不言
不言Original
2018-09-04 10:56:584478Durchsuche

Der Inhalt dieses Artikels befasst sich mit der Inhaltsanalyse des WeChat-Applet-Seitenkonstruktors und der Lebenszyklusfunktion (mit Code). Ich hoffe, dass er für Sie nützlich ist . hat geholfen.

1. Öffentliche Methoden an Seite binden

Einzelbindung

const oldPage = Page
Page = function(app) {
  // 注意公共函数的名字不要重复,否则覆盖
  app.util = function() {}
  
  return oldPage(app)
}

Mehrfachbindung, Dateibindung

const util = require('./util.js');  // 需要绑定的函数由util文件exports出来
const oldPage = Page
Page = function(app) {
  let newPage = Object.assign({}, util, app)
  
  return oldPage(newPage)
}

2. Erweiterung, Lebenszyklusfunktion ändern

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 Wenn Sie systematisch mehr über js erfahren möchten, können Sie hier klicken

3 . Verwenden Sie

Wenn ich es selbst schreibe, kapsele ich den benutzerdefinierten Inhalt in eine js-Datei und verweise dann auf diese Datei in app.js

require('./init.js'); //引用即可
App({
  onLaunch: function (options) {
  }

})

Verwandte Empfehlungen:

Lebenszyklus und Parameterübertragung des WeChat-Miniprogramms

Detaillierte Erläuterung der Page()-Funktion des WeChat-Miniprogramms

Detaillierte Erläuterung des Lebenszyklus der WeChat-Miniprogrammentwicklungsseite (4) Seite

Das obige ist der detaillierte Inhalt vonInhaltsanalyse des WeChat-Applet-Seitenkonstruktors und der Lebenszyklusfunktion (mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn