title: Meteor JS - Client Collection seems to be empty
body: <p>Its been a long time since I used Meteor or dabbled in the UI world for that matter, so forgive me if this is poor question.</p>
  
  <p>api/main.js:</p>
  
  <pre><code>export const Nodes = new Meteor.Collection("nodes");
  export const Links = new Meteor.Collection("links");
  </code></pre>
  
  <p>server/main.js</p>
  
  <pre><code>import { Links, Nodes } from '../api/main.js';
  
  Meteor.startup(() =&gt; {
    // code to run on server at startup
  }
  
  Meteor.methods({
    traverseDocument: function traverseDocument(documentKey) {
      // ... do stuff ...
      Links.insert( data.links );
      Nodes.insert( data.nodes );
      return data;
    }
  }
  </code></pre>
  
  <p>client/main.js</p>
  
  <pre><code>import { Links, Nodes } from '../api/main.js';
  import './main.html';
  
  Meteor.startup(function () {
    // Fetch data via a call
    Meteor.call("traverseDocument", 'NTD000000228506', function (error, results) {});
  });
  
  Template.viz.rendered = function () {
    console.log(Nodes.find());                 // &lt;-- LocalConnection.Cursor()
    console.log(Nodes.find().fetch());         // &lt;-- This is empty []
    console.log(Nodes._collection._docs._map); // &lt;-- This returns Object{}
  }
  </code></pre>
  
  <p>I've tried:
   1. Publish/Subscribe
   2. I tried a helper function
   3. I Have moved the Meteor.Call() into the client startup function</p>
  
  <p>So this now seems to be closer to working.</p>
  
  <p>The original question changes now to - Why does the find().fetch() return an empty array ?</p>
  
  <p>Maybe I should post a new question and mark this one as fixed ?</p>