简单的流星应用程序不会工作

时间:2015-05-06 03:17:54

标签: javascript meteor

我现在开始学习流星遇到这个问题。

编辑:问题是我的Windows系统上没有加载的文件,在端口3000的firefox或chrome浏览器中加载(我甚至尝试过IE)

没有数据显示

HTML:

<head>
    <title>People List</title>
</head>

<body>
    <h1>People List </h1>
    {{> staff}}
</body>

<template name="staff">
    <p>{{ people.length }} Members</p>
    <ul>
        {{#each people}}
            {{> person}}
        {{/each}}
    </ul>
</template>

<template name="person">
    <li>
        <h2> {{ fullName }} </h2>
        <p>
            {{#if executive}}
                <strong> {{job}} </strong>
            {{else}}
                {{job}}
            {{/if}}
        </p>
    </li>
</template>

JS:

if (Meteor.isClient) {        
    Template.staff.people = [
        { fullName: "Daniel Prince", job: "CEO" },
        { fullName: "Jane Smith", job: "CTO" },
        { fullName: "Sophie Turner", job: "Developer" },
        { fullName: "Jack Lewis", job: "Designer" }
    ];

    Template.person.executive = function (){
        return !!this.job.match(/^C.*O$/);
    };
}

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我已将您的代码放入meteorpad并且它似乎在那里完美运行。代码的链接是:http://meteorpad.com/pad/8Jie3NhFw3acCiQj4/SO%20Question

如果没有在控制台和浏览器控制台上看到错误,就很难再为您指出。

我可能建议的唯一变化是在模板上使用“帮助”方法来设置.people和.executive模板助手。 (看起来这是一种更常见的做法:

Template.staff.helpers({
  people : [
    { fullName: "Daniel Prince", job: "CEO"},
    { fullName: "Jane Smith", job: "CTO"},
    { fullName: "Sophie Turner", job: "Developer"},
    { fullName: "Jack Lewis", job: "Designer"}
  ]
});

Template.person.helpers({
    executive : function (){
        return !!this.job.match(/^C.*O$/);
    }
});

我不会太担心.helpers,因为它似乎无论如何都能正常工作。