Backbone.js设置好了

时间:2013-09-26 05:59:10

标签: javascript backbone.js

我很困惑,因为我一直试图找出如何设置Backbone.js项目。 This是我所拥有的,我只需要包含脚本,然后是什么?这是我迷路的地方,我很确定只是打开我创建的文件就不会运行项目了,不是吗?此外,我还关注 Thomas Davis 的视频教程,但该教程未介绍如何设置Backbone.js或如何运行项目。我注意到url的不同之处。我错过了什么?另外如果你有像我这样的初学者的好材料。 TNX!

这是我正在使用的代码:                                           

    <div id="page">
    </div>
    <script src="//cdnjs.cloudflare.com/ajax/libs/backbone.js/1.0.0/backbone-min.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.5.2/underscore-min.js"></script>
    <script>
        var View = Backbone.View.extend({
            el: '.page',
            render: function (){
                this.$el.html('Hello World');
            }
        });


        var Router = Backbone.Router.extend({
        routes: {
            '' : 'home'
            }
        });

        var view = new View();
        var router = new Router();
        router.on('route:home', function ()
        {
            view.render();
        });

        Backbone.history.start();
    </script>

</body>
</html>

1 个答案:

答案 0 :(得分:2)

设置Backbone

您应该在html中加入undescore.jsjquery.jsbackbone.js,然后像普通的网络应用一样运行该文件。

如果您熟悉apache,请将您的应用放入网络根目录并访问http://localhost/my_app/

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <script src="js/underscore.js"></script>
        <script src="js/jquery.js"> </script>
        <script src="js/backbone.js"></script>
    </body>
</html>

here下载underscorejs并输入js文件夹。

下载jquery here

下载Backbone here

然后将您的主干功能放在外部JavaScript文件中,并将其包含在backbone.js。

之后

修复

您的代码存在错误。您使用id定义了元素,但尝试使用类表示法进行访问。

所以替换,

var View = Backbone.View.extend({
        el: '.page',
        render: function (){
             this.$el.html('Hello World');
        }
});

用,

var View = Backbone.View.extend({
        el: '#page',
        render: function (){
             this.$el.html('Hello World');
        }
});

您必须使用el: '#page'

在包括backbone.js之前,您应该包含依赖项。

所以替换,

<script src="//cdnjs.cloudflare.com/ajax/libs/backbone.js/1.0.0/backbone-min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.5.2/underscore-min.js"></script>

使用,

<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.5.2/underscore-min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/backbone.js/1.0.0/backbone-min.js"></script>