Meteor 1.5 + React Loadable 動(dòng)態(tài)加載

讀了 Ben Newman 的 Meteor 1.5 ? React Loadable,道理很清楚,但是舉的例子不是能很好的說(shuō)明問(wèn)題,因?yàn)樵谒睦又?,那些組件其實(shí)已經(jīng)在一開(kāi)始就加載到了前端。

Source code on Github 是我的例子,可以更好的看出 Meteor 和 React loadable 在一起使用的效果。如何調(diào)試和觀察可以參考之前的一篇《Meteor 1.5 beta 動(dòng)態(tài)加載小試》。

React loadable 的代碼也是通過(guò) websocket 動(dòng)態(tài)加載的。

因?yàn)樗麄兌际亲袷氐?tc39 dynamic imports 標(biāo)準(zhǔn),所以兼容。這樣兩者在一起使用可以更靈活地控制代碼的動(dòng)態(tài)加載,提高效率。

注意我的例子還使用了 async、await,沒(méi)有使用 import().then(callback) 方式。

Template.info.events({
  async 'click button'(event, instance) {
    try {
      let di = await import("../imports/test_module")
      console.log("print dynamic imports: ", di.obj.test, di.num, di.default.anotherTest);

      let React = await import("react")
      let ReactDOM = await import("react-dom")
      
      import App from '../imports/components/App';
      ReactDOM.render( <App/>, document.getElementById('react-root') );
    } catch (err) {
      console.log("info error: ", err);
    }
  }
})
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 最近看了下 Meteor 新出的 Beta.13 版本,最重要的一個(gè)新功能就是動(dòng)態(tài)加載 (dynamic impo...
    浮點(diǎn)量化閱讀 1,148評(píng)論 1 2
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,276評(píng)論 25 708
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,678評(píng)論 19 139
  • 時(shí)間是把雙刃劍,它可以讓你喜歡一個(gè)人,也可以讓你忘記一個(gè)人, 如果說(shuō)愛(ài)你是一種奢侈,那么時(shí)間能證明一切,可是總是有...
    默魔陌閱讀 367評(píng)論 2 3
  • 大概這就是成長(zhǎng)了吧 暗戀是一件美好的事 累了就放手 不甘就去告白 “如果以后你不結(jié)婚的話 也沒(méi)有喜歡的人 也沒(méi)有女...
    順心隨行閱讀 514評(píng)論 2 0

友情鏈接更多精彩內(nèi)容