javascript - 当我使用模板时 Backbone 会生成错误

标签 javascript backbone.js

我是 Backbone 的新手,我目前正在学习模板,但是我有这个输出错误 未捕获的类型错误:无法读取未定义 underscore.js 的属性“替换”:1305 _.模板下划线.js:1305 (匿名函数)

这是我的index.js

var Person = Backbone.Model.extend({

    defaults: {
        name: 'ozan onder',
        age: 20,
        occupation: 'worker'
    }
});

var PersonView = Backbone.View.extend({
    //by default the tagname is a div element
    //but we will override it
    tagName: 'li',

    //% is how can access to a property name
    // create templer
    template: _.template($('#personTemplate').html()),

    initialize: function() {
        this.render();
    },

    render: function() {
        //set the html
        this.$el.html(this.template(this.model.toJSON()));
    }

});

var person = new Person;
var personView = new PersonView({ model: person });

console.log(personView.el);

And here is my index.html

<!DOCTYPE html>
<html> 
  <head> 
    <!--this import order is important-->
    <script src="../../library/jquery-1.8.2.min.js"></script>
    <script src="../../library/underscore.js"></script>
    <script src="../../library/backbone.js"></script>
    <script src="index.js"></script>

  </head>

  <body>

    <script id="personTemplate" type="text/template">
        <strong><%= name %></strong> (<%= age %>) - <%= occupation %>

    </script>

  </body>

</html>  

最佳答案

确保您将代码包装在 jQuery 就绪函数中,以便在页面加载之前它不会触发。也许您所操作的 DOM 元素在代码初始化时并不存在。

$( document ).ready(function() {
   // put your code here
});

OR - They both accomplish the same thing.


$(function() {
  // put your code here
});

关于javascript - 当我使用模板时 Backbone 会生成错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26320765/

相关文章:

javascript - Vue : template can't be keyed, 但不能用 div 替换模板 - 需要没有包装 div 元素的 v-for,嵌套的 v-for 循环

backbone.js - 辅助函数在 Backbone 中的位置

Backbone.js DELETE 请求未触发

ruby-on-rails - 如何使用带有主干的超薄模板?

javascript - Backbonejs 和 defaultRoute

javascript - backbonejs的set方法无法工作

javascript - 在同构 React 应用程序中,有哪些减少 FID(首次输入延迟)的好方法?

javascript - 如何仅模糊背景而不模糊 Ionic/CSS 中的内容

javascript - 输入类型=时间显示错误的时区

javascript - 调用类实例方法onclick javascript