【问题标题】:spine.js hem server, hem build FAQ for Windowsspin.js 下摆服务器,下摆构建 Windows 常见问题解答
【发布时间】:2012-03-14 14:03:05
【问题描述】:

我正在尝试模仿 Todos 示例的一些基本功能。在阅读了spinejs.com、许多文章并进行了一些尝试并没有起步之后,我确实需要在这里寻求帮助。我希望这更明确,我也想帮助其他人。我在 Windows7 上,我正在使用 spin.app 来创建我的应用程序、控制器、模型 - 也使用 jQuery.tmpl 我正在使用 CS,但对它很陌生。

我不确定我需要在哪里使用 require(如果有的话) - 我正在使用 modules.exports = .... 对所有 M、C 的声明 所以 index.coffee 应该能够找到,我想 也许情况并非如此——我看到即使控制器/联系人使用了 modules.exports 语句,索引仍然使用了 require。

index.coffee 是否只关注可见性? 我看到 Contacts 使用 Contact 时没有任何 require 语句。

我已经看到 main.App 控制器从 CS 中被实例化,就像在 Todos 中一样 或在 html 中的 jQuery() 脚本中,如在联系人中。
我假设你应该要么 -构建整个事物并包含 application.js 或 - 使用 jQuery() 函数通过 javascript 创建您的应用程序。

如果编译成功,它会出现在 public/application.js 中吗??

我遇到了一个令人讨厌的解析错误, 是的,我知道您必须始终使用空格(没有制表符)

不碍事,我在第 1 条需求线上挂断了电话 需要('lib/setup')

我需要一些 Cygwin 的东西吗?如果有帮助,我可以得到它。
我看过 Google Groups、guillaume86 的 cmets、contrib 和 CS irc 频道。

我不确定我的下摆是什么(日期)版本 但我确实尝试了 minify: false、option 和其他一些东西来尝试调试它。

好消息:我很固执,如果我能在这里得到一点帮助,我会让它发挥作用。 更多内容即将发布,但我现在要结束了。
提前感谢您的建议。

【问题讨论】:

  • 您是否在 Spine google 群组中发帖?我认为你不会在这里得到很多帮助,因为这不是一个真正的编码问题。
  • 太好了,谢谢。我确实在 2012 年初看到了您的 github 更改以缝合和解决。也许我可以合并这些更改。这是否允许 Windows (win7) 成功使用 require 调用?最好是手动进行这些更改,还是可以完全获得新咖啡?

标签: coffeescript spine.js


【解决方案1】:

我认为这不会对 OP 有太大帮助,但我想我会写这篇文章来帮助其他希望开始使用这些很棒的工具的人。

在您进一步了解之前我已在How to manage client-side JavaScript dependencies? 更新了此内容

以下是设置 Spine、hem、coffeescript 应用程序的基本列表。我只在 Linux 上开发,所以我不确定其中一些步骤在 Windows 上是否会出现问题,即npm 命令。在 Mac 上应该可以正常工作;我认识其他使用相同工具链的人。

  1. 在 *nix 系统上安装 NPM:curl http://npmjs.org/install.sh | sh。我假设它可以从命令行获得。
  2. npm install -g spine.app 将使spine 可作为全局命令使用
  3. spine app folder 将在 folder 中创建一个名为 app 的 Spine 项目,生成正确的目录结构和一堆骨架文件以供开始使用。
  4. cd 到文件夹并编辑 dependencies.json 以获取您需要的库。将它们添加到 slug.json 以便 hem 也知道在哪里可以找到它们。您可以在全局 (npm install -g hem) 或本地安装 hem,如下一步所示。
  5. npm install . 下载你刚刚输入的所有依赖项,包括 hem。
  6. 如果你看一下默认的主干配置,有一个 app/lib/setup.coffee 在那里你 require 你需要从你的依赖项中的所有库。例子:

    # Spine.app had these as dependencies by default
    require('json2ify')
    require('es5-shimify')
    require('jqueryify')
    
    require('spine')
    require('spine/lib/local')
    require('spine/lib/ajax')
    require('spine/lib/manager')
    require('spine/lib/route')
    
    # d3 was installed via dependencies.json
    require 'd3/d3.v2'
    
  7. index.coffee 中,您只需require lib/setup 并为您的应用加载主控制器。此外,您需要 require 那些其他控制器中的任何其他类。

  8. 默认生成的index.html 通常可以很好地加载您的应用,但可以根据需要进行修改。
  9. folder 运行node_modules/hem/bin/hem server 以启动一个hem 服务器,然后导航到localhost:9294 以查看您的应用程序。如果您全局安装了 hem (npm install -g hem),那么 hem server 本身可能会起作用,但有时它会混淆路径。
  10. 使用适当的 MVC 技术构建应用的其余部分,并使用手写笔进行 CSS 和 eco 进行视图。

还有一件事:通常,hem server 会在您更新代码和保存文件时自动更新,这使得调试变得轻而易举。运行hem build 会将您的应用程序编译成两个文件,application.js,这是缩小版和application.css。如果您在此之后运行hem server,它将使用这些文件并且不再自动更新。因此,在您真正需要应用的缩小版本进行部署之前,请不要hem build

请参阅其他帖子:Spine.js & hem getting started

支持 Windows(过去曾有过担忧,但他们have been resolved)。实际上有一个 hem 的分支正在更积极地开发,因为原始分支不再由开发人员维护。您可以查看分支version0_2version0_3,它们已获得更新并可能最终获得 Windows 支持。

HTH。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-16
    • 1970-01-01
    相关资源
    最近更新 更多