3

哦,动态语言的上帝,学习 Vim 并使用开源的你,请听我的祈祷。

我非常想使用Ember.js来创建我的应用程序。但我不能。亲爱的上帝,我是一个不称职的 Java 开发人员,我使用那些名为“IDE”的不纯软件来帮助我自动完成和检查我的代码(我知道这是异端)。亲爱的上帝,我使用的特定 IDE(一个名为 Eclipse 的晦涩未知的 IDE,从来没有人使用过)往往会被<script>包含我的车把模板的那些神圣和神圣的标签窒息。这些标签会破坏自动完成和代码检查,因为异端 IDE 认为它的 javascript。现在,由于我是一个不值得的人,我犯了一些错误,我希望我的 IDE 能够接受,因此目前的情况让我非常难过。

为了让 IDE 再次帮助我编写 HTML,亲爱的上帝,我非常希望将这些模板放在一个外部文件中。然后,我将能够指示不纯的 IDE 将文本解析为 HTML,然后继续我作为依靠他的工具的开发人员的悲惨生活。理想情况下,这些文件最终会出现,.html因为我可怕的环境实际上使用文件扩展名来猜测文件的内容(你能相信这样可耻的事情吗)。但我想最终的.handlebars结果对我这个罪人来说已经足够了。

所以,我要问的是,哦,云中的你,是告诉我要念诵的咒语以使这一切发生。告诉我,我必须在我的app.js定义中添加什么

(function(Ember, $) {

    var App = Ember.Application.create();

});

})(Ember, jQuery);

index.html是这么写的

<!doctype html>
<html>
<head>
    <title>Holy app</title>
</head>
<body>
    <script type="text/javascript" src="/lib/underscore-1.4.4.js"></script>
    <script type="text/javascript" src="/lib/jquery-1.9.1.js"></script>
    <script type="text/javascript" src="/lib/handlebars-1.0.0-rc.3.js"></script>
    <script type="text/javascript" src="/lib/ember-1.0.0-rc.1.js"></script>
    <script type="text/javascript" src="/app.js"></script>
</body>
</html>

和我的外部application.html包含以下内容

<div id="prayers">
    <p>
        Oh you who know all UNIX terminal command<br>
        You who shall not support any legacy code and tools<br>
    </p>
    <p>
        Make it so that this text appear in my browser<br>
        So that all of us Java and C# sinner<br>
        See the light and reveal in your dynamic way<br>
    </p>
    <p>
        Pardon our sin when we believe that using automatic refactoring tool is useful<br>
        And free us from our reliance on static typing to make less mistake<br>
    </p>
    {{holyAnswer}}
</div>

以便内容application.html找到它的方式index.html

我知道App.ApplicationView = Ember.View.create(),我也听说过,Ember.Handlebars.compile()但我虚弱的头脑不知道如何使它工作或我应该如何使用它。我的不纯方式已经包括编译,所以如果这是您要求我的负担,我可能会使用 javascript 构建工具。

网络的你们,开放标准的你们,请在那些困难时期帮助我。

编辑

亲爱的上帝,我知道这个问题是否可以使用脚本标签加载车把模板?或者在 Ember.js 中以编程方式定义车把模板,但答案并没有告诉我如何制作它,以便我的模板成为<script>神圣ember.js示例中的未命名标签的等价物。这个模板似乎是应用程序的根目录,我不知道如何ember.js使用它。

4

1 回答 1

2

您需要在外部预编译模板。由于您是 Java 开发人员,因此这个 Maven插件可能对您有好处。使用此插件将您的模板编译成一个 JS 文件,其中包含所有已编译形式的模板。然后你需要做的就是在你的 html 中包含这个 JS 文件。我自己将我的模板编译成一个名为“templates.js”的文件。在这种情况下,您的 html 将是:

<!doctype html>
<html>
<head>
    <title>Holy app</title>
</head>
<body>
    <script type="text/javascript" src="/lib/underscore-1.4.4.js"></script>
    <script type="text/javascript" src="/lib/jquery-1.9.1.js"></script>
    <script type="text/javascript" src="/lib/handlebars-1.0.0-rc.3.js"></script>
    <script type="text/javascript" src="/lib/ember-1.0.0-rc.1.js"></script>
    <script type="text/javascript" src="/templates.js"></script>
    <script type="text/javascript" src="/app.js"></script>
</body>
</html>
于 2013-03-30T08:34:15.227 回答