2016-03-21 7 views
0

hallo unten ist der Code, den ich geschrieben habe, dann ist es Tutorial Beispiel aus dem Internet (https://cdnjs.com/libraries/backbone.js/tutorials/what-is-a-view/)Backbone.js Fehler „Backbone.View.Extend ist keine Funktion“

<<!DOCTYPE html> 
<html> 
<head> 
    <script src="https://code.jquery.com/jquery-2.1.3.min.js" type="text/javascript"></script> 
    <script src="http://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.3.3/underscore-min.js" type="text/javascript"></script> 
    <script src="http://cdnjs.cloudflare.com/ajax/libs/backbone.js/0.9.2/backbone-min.js" type="text/javascript"></script> 
</head> 

<body> 
    <div id ="search_container">a</div> 
    <script type="text/template" id="search_template"> 
     <label>Search</label> 
     <input type="text" id='search_input' /> 
     <input type="button" id="search_button" value="search" /> 
    </script> 

    <script type="text/javascript"> 
     SearchView = Backbone.View.Extend({ 
      initialize: function(){ 
       this.render(); 
      }, 
      render: function(){ 
       // Compile the template using underscore 
       var template = _.template($('search_template').html(),{}); 
       // Load the compiled HTML into the Backbone "el" 
       this.$el.html(template); 
      }, 
      events:{ 
       "click input[type=button]": "doSearch" 
      }, 
      doSearch: function(){ 
       alert("search for " + $('#search_input').val()); 
      } 
     }); 

     var search_view = new SearchView({el: $('#search_container')}); 
    </script> 

</body> 
</html> 

Ich verstehe nicht, was ich Ich mache falsch, bitte führe mich. Dank

+3

Backbone.View.extend ändern müssen: verlängern mit einem Klein e – nikoshr

+0

Vielleicht möchten Sie neuere Versionen von Backbone und Underscore verwenden. Und Sie sollten '_.template (tmpl, data)' in 't = _.template (tmpl) ändern; h = t (data) 'da die [' _.template' Schnittstelle in 1.7.0 geändert wurde (http://stackoverflow.com/a/25881231/479863). –

Antwort

1

nikoshr ist Recht haben Sie mit Klein und Form machen Arbeit erweitern verwenden das Beispiel, das Sie

var template = _.template($('search_template').html(),{}); 

zu

var template = _.template($('#search_template').html(),{}); 
Verwandte Themen