MEAN纠正ejs表达代码的正确方法

时间:2014-07-07 18:51:26

标签: node.js angularjs express mean-stack

我创建了一个包含express和ejs的网站,从本地文件中的文件中提取JSON。我想从mongo数据库传递数据并显示Angular视图。我在快速,棱角分明和蒙古语方面有很多知识。将所有这些放在一起并将快速任务与角度任务分开让我挂了一点。

我的应用程序正在Heroku的http://healingcenter.herokuapp.com/services/工作,这是我不清楚如何分离快速和角度任务的页面。

它目前在express中设置,这是在我研究角度和MEAN堆栈之前。以下是路线配置。

router.get('/services', function(req, res) {
  var myServices = [];
  var entireList = [];
  entireList = appdata.services;
  appdata.services.forEach(function(item) {
    myServices = myServices.concat(item.title);
  });
  res.render('services', { 
    title: 'Services',
    services: myServices,
    list: entireList,
    page: 'servicesList'
  });
});

/* GET services detail page. */
router.get('/services/:servicesid', function(req, res) {
  var myServices = [];
  var entireList = [];

  appdata.services.forEach(function(item){
    if (item.shortname == req.params.servicesid){
      entireList.push(item);
      myServices = myServices.concat(item.title);

    }
  });
  res.render('services', { 
    title: 'Services',
    services: myServices,
    list: entireList,
    page: 'servicesDetail'
  });
});

这是使用这行代码从app.js文件中提取相同的data.json文件。

app.locals.appdata = require('./data.json');

页面变量是重要的部分。 if else语句是自定义引入的数据。该代码在这里:

<div class="services">
       <% list.forEach(function(item){ %>
        <article class="service group">

            <% if (page!= 'servicesDetail') { %>
            <a href="/services/<%= item.shortname %>"><h3><%= item.title %></h3></a>
            <p><%- item.summary %></p>
            <a href="/services/<%= item.shortname %>">more</a>
            <% }else{ %>
            <a class="back" href="/services/#"><i class="fa fa-chevron-circle-left"></i> back</a>
            <a href="/services/<%= item.shortname %>"><h3><%= item.title %></h3></a>
            <p><%- item.description %></p>
            <% } %>

        </article>
      <% }); %>
    </div>

0 个答案:

没有答案