2015-10-05 108 views
1

我試圖在加載一些js文件後初始化onsenui,但是然後 ons.bootstrap()導致錯誤。 當我使用來自onsenui的示例時,一切工作都很好,但在我的 項目中,我必須先動態加載js文件並同步 ,然後ons.bootstrap();給我這個錯誤 「'AppController'是不是一個函數,得到了undefined」文件加載後初始化onsenui

如果相同的js庫在相同的順序是在HTML文檔中用腳本標籤聲明一切都工作良好。

我發現,如果腳本通過正常的腳本標記加載,然後我等待,直到HTML文檔完全加載,然後通過開發人員工具調用ons.bootstrap()我得到同樣的錯誤。

所以問題是如何啓動文件加載後的onsen ui? 希望有人能幫助,我可不是很熟悉angularJS/OnsenUi ......第一個項目

感謝

我已創建2個樣品以證明我的問題。

  1. 像onsenui樣品工作。 jbBgmdhttp://codepen.io/anon/pen/jbBgmd
  2. 不能像我的情況那樣工作。 BoWXdPhttp://codepen.io/anon/pen/BoWXdP

什麼想法?

回答

0

您正試圖在元素渲染後加載Onsen,這就是爲什麼它發生錯誤。在組件呈現之前,您應該始終執行Onsen。

如果你想在DOM被加載後執行一些代碼,你應該使用ons.ready()函數,你可以在official documentation中看看它。

在這裏你可以找到固定的工作和CodePen:http://codepen.io/andipavllo/pen/ZbKzRy

下面是編輯JS:

ons.bootstrap().controller("appController", function() 
 
    { 
 
     ons.ready(function(){ 
 
     console.log("works") 
 
    }) 
 
});

希望它能幫助!

+0

非常感謝,現在我知道我必須先初始化UI,然後等待其他資源加載完畢。 – bigdiddy

+0

@bigdiddy歡迎您,如果解決了您的問題,請考慮將答案標記爲最佳答案 –