错误'对象不支持属性或方法'has'"在主干Js

error "Object doesn't support property or method 'has'" in Backbone Js

本文关键字:quot Js has 对象 不支持 属性 错误 方法      更新时间:2023-09-26

我开始学习Backbone Js,并试图为链接http://arturadib.com/hello-backbonejs/docs/1.html上给出的基本HelloWorld示例编写代码,但坚持错误,如Backbone Js文件所示。

我的代码是,

 <!DOCTYPE html>
  <html>
    <head>
        <meta charset="utf-8">
        <title>hello-backbonejs</title>
    </head>
    <body>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js" type="text/javascript"></script>
        <script src="http://ajax.cdnjs.com/ajax/libs/json2/20110223/json2.js" type="text/javascript"></script>
        <script src="http://ajax.cdnjs.com/ajax/libs/underscore.js/1.1.6/underscore-min.js" type="text/javascript"></script>
        <!--<script src="http://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.0/backbone-min.js" type="text/javascript"></script>-->
        <script src="backbone.js" type="text/javascript"></script>
        <script src="practise.js" type="text/javascript"></script>
    </body>
  </html>

(function ($) {
    var ListView = Backbone.View.extend({
        el: $('body'),
        initialize: function () {
            _.bindAll(this, 'render');
           this.render(); 
        },
       render: function () {
            $(this.$el).append("<ul> <li>hello world</li> </ul>");
       }
    });
    var listView = new ListView();
})(jQuery);

在"if (protoProps &&_。在backbone.js文件中有(protoProps, 'constructor')) {"(

请帮我解决这个错误

您使用非常旧的underscore版本- 1.1.6(当前版本是1.6.0)。骨干使用该库,但_.has方法在1.3.1下划线处引入,1.1.6中没有。我认为,这导致了错误。只要使用最新的underscore,错误就会消失。

UPDATE也最好使用最新的jQuery