我是ember.js的新手,试图理解ember,但是现有示例“使用Ember.js构建应用程序”无法正常工作,而且我遇到了TypeErrorTypeError: Application.registerInjection is not a function,我包括了脚本

<script src="js/libs/jquery-1.9.1.js"></script>
<script src="js/libs/handlebars-1.0.0-rc.3.js"></script>
<script src="js/libs/ember-1.0.0-rc.3.js"></script>
<script src="js/libs/ember-data-latest.js"></script>

我不知道如何解决,有人可以帮助我吗?

我的app.js代码是
App = Ember.Application.create();

App.Store = DS.Store.extend({
revision: 12,
adapter: 'DS.FixtureAdapter'
});

App.Router.map(function() {
  this.resource('posts');
  this.resource('about');
});

App.PostRoute = Ember.Route.extend({
model: function() {
    return App.Post.find();
}
});

App.Post = DS.Model.extend({
title: DS.attr('string'),
author: DS.attr('string'),
intro: DS.attr('string')
});

App.Post.FIXTURES = [{
id: 1,
title: "Ember leaning",
author: "Anand",
intro: "Write dramatically less code with Ember's Handlebars integrate templates    that update automatically when the underlying data changes."
}, {
id: 2,
title: "A framework for creating ambitious web application",
intro: "Don't waste time making trivial choices. Ember.js incorporates common idioms so you can focus on what makes your app special, not reinventing the wheel."
}];

我的index.html代码是
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Ember Starter Kit</title>
   <link rel="stylesheet" href="css/normalize.css">
   <link rel="stylesheet" href="css/bootstrap.min.css">
   <link rel="stylesheet" href="css/style.css">
</head>
<body>

 <script type="text/x-handlebars">
 <div class="navbar">
  <div class="navbar-inner">
    <a class="brand" href="#">Bloggr</a>
      <ul class="nav">
        <li>{{#linkTo 'posts'}}Posts{{/linkTo}}</li>
        <li>{{#linkTo 'about'}}About{{/linkTo}}</li>
      </ul>
  </div>
 </div>

{{outlet}}
 </script>

 <script type="text/x-handlebars" id="posts">
 <div class="container-fluid">
  <div class="row-fluid">
    <div class="span3">
      <table class="table">
        <thead>
          <tr>
            <th>Recent Post</th>
          </tr>
        </thead>
        {{#each model}}
        <tr>
          <td>
            <a href="#">{{title}}<small class="muted"> by {{Author}}</small></a>
          </td>
        </tr>
        {{/each}}
      </table>
    </div>
    <div class="span9">
    </div>
  </div>
 </div>
 </script>

 <script type="text/x-handlebars" id="about">
 <div class='about span12 hero-unit'>
   <p>IDEX Solution&#8217;s aims to provide solutions for Linux Platform, located in Gandhidham, Gujarat. Here at IDEX,  we provide services to small / medium businesses and home users who want to enjoy the power of Linux.
  </p>
  <p>Whilst as a company, we were formed in Jan 2004, Company&#8217;s founder is working on Linux since 1995. We use Linux in everyday of our lives on our Laptops, Desktops and Servers.
  </p>
  <p>We specialize in providing Tailor Made Software Solutions for our clients in very affordable prices. Since we use all Open Source Software, which help us to keep our prices very low, so our clients can enjoy this benefit. Visit our <a href="http://idexindia.com/products">Products</a> page for more information on our existing products, we also provide other services as well, kindly visit our <a href="http://idexindia.com/services">Services</a> page for more information.
  </p>
</div>
</script>

<script src="js/libs/jquery-1.9.1.js"></script>
<script src="js/libs/handlebars-1.0.0-rc.3.js"></script>
<script src="js/libs/ember-1.0.0-rc.3.js"></script>
<script src="js/libs/ember-data-latest.js"></script>
<script src="js/app.js"></script>

</body>
</html>

最佳答案

首先,您应该从控制台中的错误消息中注意到问题出在“ember-data-latest.js”内部。您无需发布所有应用程序代码。
其次,在GitHub上找到的ember-data-latest.js并不是最新的ember更新。您可以在此处找到可用的ember-data版本:

http://builds.emberjs.com.s3.amazonaws.com/ember-data-latest.js

关于javascript - TypeError:Application.registerInjection不是函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16185146/

10-16 14:26