首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改文件夹结构时不运行领导板示例

更改文件夹结构时不运行领导板示例
EN

Stack Overflow用户
提问于 2013-12-11 10:36:27
回答 1查看 175关注 0票数 0

这一次我学习了meteor.js :我是从例子中学习的。我现在使用的示例是领导板:来自本机示例项目的http://www.meteor.com/examples/leaderboard,我有以下文件夹结构:

代码语言:javascript
复制
leaderboard
|-.meteor
|-leaderboard.css
|-leaderboard.html
|-leaderboard.js

我现在试着理解meteor.js文件夹的结构,我尝试这样移动:

代码语言:javascript
复制
leaderboard
|-.meteor
|-client
    |--leaderboard.css
    |-leaderboard.html
    |-leaderboard.js
|-public
|-server

我没有改变任何代码,只是创建文件夹和移动,然后我启动流星和访问本地主机:3000,但网络没有工作。帮助我解决这个问题,请告诉我如何使用私有文件夹:D

谢谢

更新我试着按照指示。我用领导更新我的服务器文件夹。

代码语言:javascript
复制
Meteor.startup(function () {
    if (Players.find().count() === 0) {
      var names = ["Ada Lovelace",
                   "Grace Hopper",
                   "Marie Curie",
                   "Carl Friedrich Gauss",
                   "Nikola Tesla",
                   "Claude Shannon"];
      for (var i = 0; i < names.length; i++)
        Players.insert({name: names[i], score: Math.floor(Random.fraction()*10)*5});
    }
  });

我的leaderboard.js in /client也用no (Meteor.isClient)更新--这是我的错误:

代码语言:javascript
复制
Your app is crashing. Here's the latest log.

W2036-17:49:01.658(7)? (STDERR) D:\Meteor\leaderboard\.meteor\local\build\programs\server\boot.js:195
W2036-17:49:01.661(7)? (STDERR) }).run();
W2036-17:49:01.662(7)? (STDERR)    ^
W2036-17:49:01.663(7)? (STDERR) ReferenceError: Players is not defined
W2036-17:49:01.665(7)? (STDERR)     at app/server/leadership.js:2:9
W2036-17:49:01.666(7)? (STDERR)     at D:\Meteor\leaderboard\.meteor\local\build\programs\server\boot.js:168:61
W2036-17:49:01.668(7)? (STDERR)     at Array.forEach (native)
W2036-17:49:01.669(7)? (STDERR)     at Function._.each._.forEach (C:\Users\yoza\AppData\Local\.meteor\tools\e42f0b78d3\lib\node_modules\underscore\underscore.js:79:11)
W2036-17:49:01.671(7)? (STDERR)     at D:\Meteor\leaderboard\.meteor\local\build\programs\server\boot.js:168:5
=> Exited with code: 8
=> Your application is crashing. Waiting for file change.
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-11 10:42:56

leadership.js中也有代码需要放在.js文件中的/server文件夹中。

if(Meteor.isClient){中的所有代码都只能在客户机上运行。因此,这应该放在/client文件夹中。它不需要在客户端文件夹中检查if(Meteor.isClient){条件。

同样,if(Meteor.isServer) {中的内容也属于/server文件夹。

它不能工作,因为/client中的文件只能在客户端运行,并且有一些服务器端部分,比如需要在服务器上运行的集合。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20516797

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档