摘要:內部實現了對用戶系統的支持,可以讓你的應用程序分分鐘種支持多用戶系統。數據和用戶信息關聯使用的添加一條數據頁面添加事件在保存的時候,額外保存了兩條用戶相關的數據一個是用戶的,一個是用戶的名稱。
Meteor 內部實現了對用戶系統的支持,可以讓你的應用程序分分鐘種支持多用戶系統。
要開啟對于Accounts 系統和UI的支持,我們需要添加相關的packages,cd 到App的目錄,添加相關的包:
meteor add accounts-ui
meteor add accounts-password
一個是用戶系統相關的ui包,一個是password相關的包
添加login按鈕直接在body里面添加login的模板即可:
{{> loginButtons}}
效果如下:
點擊按鈕會彈出一個登錄框:
可以登錄,也可以跳轉到注冊界面
在取用戶信息在html中可以通過currentUser這個變量獲取到用戶的信息
{{#if currentUser}}{{currentUser.username}}{{> add}} {{> detail}} {{/if}}
currentUser可以判斷用戶是否登錄,沒有登錄的用戶該值為空,如果用戶已經登錄可以通過currentUser.username得到用戶的名字。
數據和用戶信息關聯使用add的template添加一條language數據
頁面:
添加事件:
Template.add.events({ "submit .new-language": function (event) { event.preventDefault(); console.log("test"); console.log(Meteor.user().username); var text = event.target.text.value; Languages.insert({ text: text, createdAt: new Date(), owner: Meteor.userId(), username: Meteor.user().username }); } });
在保存Lanuages的時候,額外保存了兩條用戶相關的數據 一個是用戶的id,一個是用戶的名稱。owner保存的是user的 _id就是MongoDB的主鍵。通過Meteor.userId() 可以獲得當前登錄用戶的id,Meteor.user()可以獲得當前登錄的用戶,Meteor.user()在JavaScript中使用,而currentUser在html中使用。
在數據中顯示用戶信息在lanuage信息中,顯示出用戶名
{{#each languages}}{{username}} -{{text}}{{/each}}
獲取數據的代碼:
Template.detail.helpers({ languages: Languages.find({owner: Meteor.userId()}) });
從保存到數據庫中的用戶信息中,顯示用戶的名稱。
項目源代碼地址:https://github.com/jjz/meteor/tree/master/meteor-account
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/18829.html
摘要:為了開啟這套賬戶系統和界面,我們需要去添加相關的包。使用,而不是在文件加入開始這段代碼只會在客戶端執行加入結束添加用戶關聯功能現在你已經可以創建賬戶并登錄你的應用程序了。例如包含了已登陸用戶的用戶名。 添加多用戶賬戶 Meteor帶來了一套賬戶系統然后順便還帶了用戶界面來讓你可以在幾分鐘之內在你的應用中添加多用戶功能 目前,這套UI組件使用Blaze作為默認的UI引擎,在未來,可能會以...
摘要:在我的機子上,運行于端口,以避免和其他默認運行于端口的沖突。我們可以使用命令連接數據庫查看定義應用層次創建的模板應用有一個問題,客戶端和服務器段的代碼是一樣的。在中加入然后添加問題模板注意我們使用了來確保用戶未登錄的情況下應用。 編者注:我們發現了有趣的一系列文章《30天學習30種新技術》,正在翻譯中,一天一篇更新,年終禮包。下面是第15天的內容。 到目前為止我們討論了Bower...
摘要:在我的機子上,運行于端口,以避免和其他默認運行于端口的沖突。我們可以使用命令連接數據庫查看定義應用層次創建的模板應用有一個問題,客戶端和服務器段的代碼是一樣的。在中加入然后添加問題模板注意我們使用了來確保用戶未登錄的情況下應用。 編者注:我們發現了有趣的一系列文章《30天學習30種新技術》,正在翻譯中,一天一篇更新,年終禮包。下面是第15天的內容。 到目前為止我們討論了Bower...
摘要:通過發布訂閱模式過濾數據現在我們已經把應用中比較敏感的代碼放到了一些方法里面,我們還需要學習安全故事的另一半內容了。當在客戶端被調用時傳入發布器名稱,客戶端將會從發布器訂閱所有的數據。這個按鈕應該只是給任務的所有者來顯示。 通過發布訂閱模式過濾數據 現在我們已經把應用中比較敏感的代碼放到了一些方法里面,我們還需要學習Meteor安全故事的另一半內容了。到現在為止,我們一直是假設整個整個...
摘要:發布與訂閱在端使用函數注冊一個的發布者,需要在客戶端對進行訂閱,使用訂閱了現在已經添加的數據就會重新出現在頁面上。利用發布訂閱模式,我們也可以實現對于私有數據的訪問。 我們可以使用安全的方法讓用戶端不直接操作數據庫,但是還是可以直接讀取數據庫內容,如果我們還需要保護私有的數據存儲,在客戶端直接使用Collection.find(),這樣的操作方式在實際的項目中并不會使用,這樣的數據無法...
閱讀 3385·2021-11-24 09:38
閱讀 1385·2021-11-22 15:08
閱讀 1454·2021-09-29 09:35
閱讀 475·2021-09-02 15:11
閱讀 1304·2019-08-30 12:55
閱讀 385·2019-08-29 17:16
閱讀 492·2019-08-29 11:30
閱讀 415·2019-08-26 13:23