Garfish
应用的生命周期可以归结为:加载、渲染、销毁 三个阶段,因此 Garfish
应用的生命周期也是围绕着这三个阶段而展开的。应用的加载主要是通过 Garfish.loadApp,通过 loadApp
API 会自动创建应用的实例,可以通过应用实例上的 mount
和 show
方法对应用进行渲染,通过 unmount
和 hide
方法对应用进行销毁,用户在实际使用的过程中通过 Garfish.run会发现当路由发生变化时符合加载条件的应用会自动加载渲染,实际上是 Garfish Router Plugin
通过监听路由变化来触发 loadApp
和 mount
自动完成应用的加载、渲染、销毁。
app.mount 做了哪些事情
app
容器并添加到文档流上provider
app.options.beforeMount
钩子provider.render
app.display
和 app.mounted
设置为 true
app
set 到 Garfish.activeApps
中app.options.afterMount
钩子app.mount
会返回 false
,否则渲染成功会返回 true
,你可以根据返回值做对应的处理。app.unmount 做了哪些事件
app.options.beforeUnmount
钩子provider.destroy
app
的容器从文档流上移除app.display
和 app.mounted
设置为 false
Garfish.activeApps
中移除当前的 app
实例app.options.afterUnmount
钩子app.show 做了哪些事件
app
的容器添加到文档流上provider.render
app.display
设置为 true
app.hide 做了哪些事件
provider.destroy
app
的容器从文档流上移除app.display
设置为 false