2012-11-22 54 views
3

我已經開始使用facebook,twitter,github和auth帳戶的帳戶包的流星應用程序。對於UI,我使用引導程序包。 Whenevee我打開我的網站projectx.meteor.com,登錄鏈接需要一些時間流星:帳戶登錄鏈接需要時間加載

我把一切都在HTML頁面上靜態的,除了鏈接登錄:

客戶端/ x.html:

<div class="masthead"> 
    <ul class="nav nav-pills pull-right"> 
    <li class="active"><a href="#">Home</a></li> 
    <li><a href="#">About</a></li> 
    <li><a href="#">Contact</a></li> 
    <li><a href="#">{{loginButtons}}</a></li> 
    </ul> 
</div> 

客戶端沒有JS,我在服務器上調用了啓動方法。 服務器/ startup.js:

Meteor.startup(function() { 

}); 

而且,當我訪問從IE 9以上網址我的Windows Phone 7.5,它不會顯示在所有的登錄鏈接。

更新:在下面的評論之後,我修改了我的代碼以刪除軟件包和其他HTML。現在包含在套餐:

  • 保存,輸入
  • 賬戶的UI
  • 帳戶密碼
  • 帳戶,Facebook的
  • 賬戶,Twitter的
  • 賬戶,github上

我已經刪除引導,現在我的模板上唯一的東西是{{loginButtons}},它stil l延遲後加載登錄鏈接。這是賬戶包的默認行爲?

+0

您是否嘗試將{{loginButtons}}置於之外

  • ?我知道那些標籤可能對推廣非常重要,但在沒有他們看到的情況下嘗試一下。 我非常懷疑Bootstrap是問題,但是因爲您沒有js代碼.... –

    +0

    @mohamedmellouki用更多的信息更新了問題 – gentrobot

    回答

    1

    加載按鈕需要很長時間的原因是因爲流星必須要求服務器端提供必要的配置信息(位於Mongo實例的集合中),然後才能呈現每個按鈕的登錄按鈕您想使用的外部服務。我認爲最好的解決方案(以及我使用的解決方案)是,如果您想要更快的結果或調整登錄按鈕模板,以便從客戶端使用JSON對象移植到所有它需要的OAuth密鑰。

    0

    正如你所說,這是默認行爲。 在代碼中引導程序或js沒有問題。 我無法解釋爲什麼,但它的工作原理。

    +0

    從一個關於在不同網站上使用Meteor的問題的答案http://www.quora.com/Meteor-web-framework/Is-Meteor-good-enough-to-use-in-production),有人說: 沒有服務器端渲染。當用戶點擊流星應用程序時,Meteor將所有模板數據轉換爲javascript,然後將其發送給客戶端。這也意味着最低速的客戶端負載。這就是說,因爲這是一個單頁的應用程序,在初始加載之後,一切都應該很快。 – gentrobot