2013-04-30 42 views
6

Tôi đang theo dõi backbone.js cho hướng dẫn cho người mới bắt đầu và tôi đã gặp khó khăn ở rào cản đầu tiên. Tôi gặp lỗi TypeError: a.apply is not a function trong firebug (Firefox 20.0.1). Tôi có đoạn mã sau:TypeError: a.apply không phải là hàm

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<title>Backbone Test</title> 
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.1.1/css/bootstrap.min.css" /> 
<meta charset="utf-8" /> 
</head> 
<body> 

    <div class="container"> 
     <h1>User Manager</h1> 
     <hr /> 
     <div class="page"></div> 
    </div> 

    <script src="//cdnjs.cloudflare.com/ajax/libs/jquery/1.8.2/jquery.min.js" type="text/javascript"></script> 
    <script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.4.2/underscore-min.js" type="text/javascript"></script> 
    <script src="//cdnjs.cloudflare.com/ajax/libs/backbone.js/0.9.2/backbone-min.js" type="text/javascript"></script> 
    <script> 
     var Router = new Backbone.Router.extend({ 
      routes: { 
       '': 'home' 
      }  
     }); 

     var router = new Router(); 

    </script> 

</body> 
</html> 

Tôi đang sử dụng các phiên bản cũ của jquery, nhấnxương sống vì họ là những phiên bản được sử dụng trong hướng dẫn. Tôi đã thử sử dụng các phiên bản hiện tại của tất cả, và tôi nhận được một lỗi tương tự: "TypeError: i .apply không phải là một chức năng".

Lỗi xảy ra khi một phiên bản của Bộ định tuyến được tạo, tức là dòng: var router = new Router(); ở trên.

Lỗi có liên quan đến việc thiết lập của tôi không? WAMP, hoặc mã, hoặc các thư viện? Tôi không thể hiểu nó vì nó giống với chữ cái như là tutorial.

+3

Bạn đang gọi "mới" hai lần. – StuR

+0

thx StuR. lỗi học sinh. không có thắc mắc chưa có câu trả lời ở đây! : $ – dewd

Trả lời

17

Thay đổi

var Router = new Backbone.Router.extend({ 

Để

var Router = Backbone.Router.extend({ 

Khi bạn đang mở rộng những lớp học, bạn chỉ cần gọi extend, mà sẽ trả lại chức năng constructor rằng bạn sẽ gọi new về sau.

+0

Các bạn là những hạt tuyệt đối. Một lỗi học sinh như vậy. Không thể nhìn thấy nó để tìm kiếm. Thật không may, tôi không thể upvote bạn bởi vì tôi cần ít nhất 15 điểm rep. : $ – dewd

+0

Vâng, điều này đã cắn tôi một lần trước đây, quá. :) –

+2

Tôi vừa mới hơn 15 điểm, vì vậy +1 :) – dewd

Các vấn đề liên quan