4

まず、私は新しいユーザーです。この質問をする場所ではない場合、または質問の詳細が漏れている場合はお知らせください。必要な調整を行います。

私は Ember.JS を初めて使用し、最近この入門ガイドを読んで学習を始めました。

このガイドの初期段階で、私はすでに次の問題に取り組んでいます。

<body>このハンドルバー スクリプト タグの内部コンテンツをラップするために index.html を更新する必要がある段階まで、すべての段階はうまく機能しました。

<script type="text/x-handlebars" data-template-name="todos">.....</script>

このガイドの 5 番目のステップで尋ねたとおりです。

そうすると、ウィンドウには何も表示されなくなります(背景画像を除く)

これが私のファイルの外観です(階層):

https://dl.dropboxusercontent.com/u/24149874/image.png

これらは、ガイドの前の手順の関連ファイルの内容です。

index.html

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Ember.js • TodoMVC</title>
    <link rel="stylesheet" href="style.css">
  </head>
  <body>
    <script type="text/x-handlebars" data-template-name="todos">
        <section id="todoapp">
          <header id="header">
            <h1>todos</h1>
            <input type="text" id="new-todo" placeholder="What needs to be done?" />
          </header>

            <section id="main">
              <ul id="todo-list">
                <li class="completed">
                  <input type="checkbox" class="toggle">
                  <label>Learn Ember.js</label><button class="destroy"></button>
                </li>
                <li>
                  <input type="checkbox" class="toggle">
                  <label>...</label><button class="destroy"></button>
                </li>
                <li>
                  <input type="checkbox" class="toggle">
                  <label>Profit!</label><button class="destroy"></button>
                </li>
              </ul>

              <input type="checkbox" id="toggle-all">
            </section>

            <footer id="footer">
              <span id="todo-count">
                <strong>2</strong> todos left
              </span>
              <ul id="filters">
                <li>
                  <a href="all" class="selected">All</a>
                </li>
                <li>
                  <a href="active">Active</a>
                </li>
                <li>
                  <a href="completed">Completed</a>
                </li>
              </ul>

              <button id="clear-completed">
                Clear completed (1)
              </button>
            </footer>
        </section>

        <footer id="info">
          <p>Double-click to edit a todo</p>
        </footer>
    </script>

    <script src="libs/jquery-1.10.js"></script>
    <script src="libs/handlebars.js"></script>
    <script src="libs/ember.js"></script>
    <script src="libs/ember-data-0.13.js"></script>

    <script src="application.js"></script>
    <script src="router.js"></script>   

  </body>
</html>

アプリケーション.js

window.Todos = Ember.Application.create();

router.js

Todos.Router.map(function () {
this.resource('todos', { path: '/' });
});

もちろん、他の関連する投稿で答えを見つけようとしましたが、何も役に立ちませんでした.

あなたの助けに感謝!

4

3 に答える 3

1

applicationここで欠けているのは、テンプレート自体だけだと思います。

次のように定義してみてください。

<script type="text/x-handlebars" data-template-name="application">
  {{outlet}}
</script>

<script type="text/x-handlebars" data-template-name="todos">
  ...
</script>

テンプレート{{outlet}}を挿入する場所を ember に伝える必要があるため、here は重要です。todos

実際の例については、こちらを参照してください。css ファイルが含まれていないため、すべてが台無しになるのは正常ですが、基本的なセットアップは機能しています。

それが役に立てば幸い。

于 2013-07-10T14:11:56.357 に答える
1

jQueryファイルだけでなく、ハンドルバーファイルの名前もindex.htmlファイルに間違って書かれています。

次のコードで index.html ファイルを変更します。

<script src="js/libs/jquery-1.10.2.min.js"></script>
<script src="js/libs/handlebars-1.0.0.js"></script>

さらに次のステップで、js ファイルの名前が js/app.js または js/application.js になっていることに注意してください。これは、github のコードのファイル名が app.js であるのに対し、ウェブサイトのファイル名は application.js であるためです。

于 2014-01-20T11:10:19.750 に答える