我正在構建一個應用程序Meteor,我正在創建第一次用戶啓動屏幕 - 類似於「關於/歡迎」頁面。本質上來說,這是第一次啓動應用程序之後會拉出一次性屏幕並且再也不會出現的東西;如果用戶已經打開應用程序,他們將被引導到另一個頁面。檢測流星應用程序的第一次用戶
我沒有使用登錄憑據,所以我需要一個不同的解決方案,而不是檢查用戶是否登錄。
我該如何去配置這個?我試圖搜索整個網絡,似乎無法找到解決方案。請注意,這與「啓動屏幕」不同。
我正在構建一個應用程序Meteor,我正在創建第一次用戶啓動屏幕 - 類似於「關於/歡迎」頁面。本質上來說,這是第一次啓動應用程序之後會拉出一次性屏幕並且再也不會出現的東西;如果用戶已經打開應用程序,他們將被引導到另一個頁面。檢測流星應用程序的第一次用戶
我沒有使用登錄憑據,所以我需要一個不同的解決方案,而不是檢查用戶是否登錄。
我該如何去配置這個?我試圖搜索整個網絡,似乎無法找到解決方案。請注意,這與「啓動屏幕」不同。
您將需要使用localstorage或設置cookie。
我建議先嚐試localstorage。上有atmosphere幾個包,應該幫助,
使用frozeman:存儲包(meteorpad example):
Template.body.helpers({
beenHereBefore: function() {
var beenHereBefore = LocalStore.get('BeenHereBefore', {reactive: false});
console.log(LocalStore.get('BeenHereBefore', {reactive: false}));
if (beenHereBefore !== true){
LocalStore.set('BeenHereBefore', true, {reactive: false})
console.log(LocalStore.get('BeenHereBefore', {reactive: false}));
}
return beenHereBefore;
},
});
<body>
{{#unless beenHereBefore}}
<h1> Welcome first time visitor! </h1>
{{else}}
<div class="outer">
<div class="logo"></div>
<h1 class="title">Leaderboard</h1>
<div class="subtitle">Select a scientist to give them points</div>
{{> leaderboard}}
</div>
{{/unless}}
</body>
這是可行的!非常感謝!! :) –
只是一些簡單的JavaScript應該做的伎倆:
if (Boolean(localStorage.getItem('visitedApp'))) {
// user's been here before
} else {
// do stuff for first time user
localStorage.setItem('visitedApp', true);
}
這是一個有點硬因爲他們通常可以清除瀏覽器cookie和本地存儲 - 它的準確程度如何? – corvid
它不需要超級準確。只是希望有一次性的「教程」類型的屏幕。 –
[流星:如何在用戶註冊時顯示頁面](http://stackoverflow.com/questions/32956291/meteor-how-do-i-show-a-page-when-a-用戶註冊) –