在這個例子中,我們將使用 PlayersCollection 集合有以下資料。如果不能確定Meteor中如何建立 MongoDB 集合,您可以檢視我們的集合這一章。
C:\Users\Administrator\Desktop\meteorApp>meteor remove autopublish
在此步驟後,你會發現,無法從用戶端獲取資料庫中的資料。只能在命令提示字元視窗中的伺服器端看到它。檢出下面的程式碼 -
var PlayersCollection = new Mongo.Collection('playersCollection'); var myLog = PlayersCollection.find().fetch(); console.log(myLog);
比方說,我們要允許用戶端使用您的資料。要允許這一點,我們需要在伺服器上建立 Meteor.publish()方法。該方法將資料傳送到用戶端。為了能夠接收和使用在用戶端的資料,我們將建立Meteor.subscribe()方法。在該範例的結尾,我們檢索的資料庫。這段程式碼可以在用戶端和伺服器上執行。
var PlayersCollection = new Mongo.Collection('playersCollection'); if(Meteor.isServer) { Meteor.publish('allowedData', function() { return PlayersCollection.find(); }) } if (Meteor.isClient) { Meteor.subscribe('allowedData'); }; Meteor.setTimeout(function() { var myLog = PlayersCollection.find().fetch(); console.log(myLog); }, 1000);
var PlayersCollection = new Mongo.Collection('playersCollection'); if(Meteor.isServer) { Meteor.publish('allowedData', function() { return PlayersCollection.find({name: "John"}); }) } if (Meteor.isClient) { Meteor.subscribe('allowedData'); }; Meteor.setTimeout(function() { myLog = PlayersCollection.find().fetch(); console.log(myLog);}, 1000);