簡體   English   中英

使用meteor.js登錄的加載頁面

[英]Load page logged in with meteor.js

我正在使用Meteor.js的內置Accounts功能。 當用戶通過cookie登錄時,Meteor似乎首先加載頁面的“已注銷”版本,然后自動將用戶登錄並重新加載頁面以獲取“已登錄”版本。

您可以在示例參與方應用程序中看到此行為: http : //vdawg-parties.meteor.com/注冊,然后重新加載頁面。 它將加載已注銷的頁面,然后在2-3秒后切換到已登錄的版本。

是否可以在頁面加載時加載登錄版本? 加載頁面然后立即切換到另一個頁面會造成混亂。

流星是基於“在線數據”類型的結構構建的。 這意味着最初,當您的項目加載時,服務器和瀏覽器之間沒有發送任何實際數據。 因此,無法在不等待數據下載的情況下確定用戶是否以流星般的方式登錄。

這是用戶登錄時流星將登錄數據存儲在localStorage的原因。

載入畫面

流星從服務器下載/同步本地集合時最好有一個加載屏幕,以等待用戶登錄完成的方式:

客戶端html

<template name="YourLoggedInSection">
    {{#if isLoaded}}
        ..your logged in section/or place to log in
    {{else}}
        <h1>Loading</h1>
    {{/if}}
</template>

客戶端js

Template.YourLoggedInSection.isLoaded = function() {
    return Accounts.loginServicesConfigured();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM