2017-03-05 75 views
0

我是流星的新手,我遇到了一些问题。我正在创建一个社交网络应用程序,它基本上做的是注册用户,用户可以发布并关注其他人。这就是它现在的基本功能。我想添加一些内容,当用户点击其他用户个人资料时,会显示用户发布的内容。但代码心不是工作和犯规都我似乎找不到流星中的错误

模板显示任何错误

<template name="profileArea"> 
{{#if currentUser}} 
    <div id="side-profile" class="side-box"> 
     <a class="filter-user">{{currentUser.username}}</a> 
    </div> 
    {{/if}} 
    <div id="side-all" class="side-box"> 
     <a class="community">Community</a> 
    </div> 
    {{#if currentUser}} 
    <div id="side-like" class="side-box"> 
     <h3>Following</h3> 
     <div class="boxcontent"> 
     {{#each username in following}} 
      <div> 
       <a class="filter-user">{{username}}</a> 
      </div> 
     {{/each}} 
     </div> 
    </div> 
     <div id="side-likeyou" class="side-box"> 
     <h3>Follows You</h3> 
     <div class="boxcontent"> 
     {{# each followers}} 
      <div> 
       <a class="filter-user">{{username}}</a> 
      </div> 
     {{/each}} 
     </div> 
    </div> 
    {{/if}} 
</template> 

代码:

Template.profileArea.events({ 
    'click .filter-user': function(event){ 
     event.preventDefault(); 
     var selectedUser = event.target.text; 

     Session.set('username', selectedUser); 
    }, 
    'click .community': function(event){ 
     event.preventDefault(); 
     Session.set('username', null); 
    } 
}); 

Template.postsList.helpers({ 
    posts: function() { 
     //Stuff should happen here but its not -_- 
     var result; 
     if(Session.get('username')){ 
      result = Post.find({username: Session.get('username')}, {sort:{created: -1}}); 
     } 
     else{ 
      result = Post.find({}, {sort:{created: -1}}); 
     } 
     return result; 
    } 
}); 
+0

你的模板在哪里渲染子模板'postsList'?你的例子不包括这个细节。 – jordanwillis

+0

嗨,你是什么意思? <模板名称= “postsList”> {{#each帖}}

{{content}}
{{username}}
{{/每} } –

回答

1

在这种情况下的问题是,你从来没有真正呈现您的postsList模板(您只是刚刚定义它)。

如果您想要实际看到postsList,您需要从profileArea的HTML中的某处拨打{{> postsList }}。这将渲染该模板,然后您的助手将执行(并在Session.get('username')更改时反应性地更改)。

也许在配置文件的'Follows You'部分后添加此项。

<div id="side-posts" class="side-box"> 
    <h3>Posts</h3> 
    <div class="boxcontent"> {{> postsList }} <div> 
</div> 
相关问题