JavaScript的Backbone.js框架環(huán)境搭建及Hellow world示例
來源:易賢網(wǎng) 閱讀:950 次 日期:2016-07-02 13:10:53
溫馨提示:易賢網(wǎng)小編為您整理了“JavaScript的Backbone.js框架環(huán)境搭建及Hellow world示例”,方便廣大網(wǎng)友查閱!

這篇文章主要介紹了JavaScript的Backbone.js框架環(huán)境搭建及Hellow world示例,Backbone是一個類似MVC結(jié)構(gòu)的前端MVVM框架,非常輕量,需要的朋友可以參考下

環(huán)境準備

在正式學習Backbone之前,你需要準備一些東西:

首先,你需要獲取Backbone框架源文件:http://documentcloud.github.com/backbone/

Backbone依賴于Underscore框架的基礎方法,因此,你同時需要下載Underscore框架的源文件:http://documentcloud.github.com/underscore/

在Backbone中,對DOM和事件的操作依賴于第三方庫(如jQuery或Zepto),你只需要選擇其中一個下載:

jQuery:http://jquery.com/

Zepto:http://zeptojs.com/

看起來好像挺麻煩的樣子,但Backbone的目的是在于使用簡單的框架來構(gòu)建復雜的應用,因此麻煩并不表示它很復雜。

你可以新建一個HTML頁面,并將這些框架引入進來,就像這樣:

<script type="text/javascript" src="jquery/jquery-1.8.2.min.js"></script> 

<script type="text/javascript" src="underscore/underscore-min.js"></script> 

<script type="text/javascript" src="backbone/backbone-min.js"></script> 

至此,你已經(jīng)準備好了運行Backbone必須的環(huán)境。

Hellow World

先來說一下這個helloworld的功能: 在頁面上有一個報道的按鈕,點擊彈出輸入框,輸入內(nèi)容,確認,最后內(nèi)容會加到頁面上。頁面圖如下:

名單

下面來看代碼:

<!DOCTYPE html>

<html>

<head>

    <title>the5fire.com-backbone.js-Hello World</title>

</head>

<body>

<button id="check">報到</button>

<ul id="world-list">

</ul>

<a >更多教程</a>

</body>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>

<script src="http://documentcloud.github.com/underscore/underscore-min.js"></script>

<script src="http://documentcloud.github.com/backbone/backbone-min.js"></script>

<script>

(function ($) {

    World = Backbone.Model.extend({

        //創(chuàng)建一個World的對象,擁有name屬性

        name: null

    });

    Worlds = Backbone.Collection.extend({

        //World對象的集合

        initialize: function (models, options) {

            this.bind("add", options.view.addOneWorld);

        }

    });

    AppView = Backbone.View.extend({

        el: $("body"),

        initialize: function () {

            //構(gòu)造函數(shù),實例化一個World集合類,并且以字典方式傳入AppView的對象

            this.worlds = new Worlds(null, { view : this })

        },

        events: {

            "click #check": "checkIn",  //事件綁定,綁定Dom中id為check的元素

        },

        checkIn: function () {

            var world_name = prompt("請問,您是哪星人?");

            if(world_name == "") world_name = '未知';

            var world = new World({ name: world_name });

            this.worlds.add(world);

        },

        addOneWorld: function(model) {

            $("#world-list").append("<li>這里是來自 <b>" + model.get('name') + "</b> 星球的問候:hello world!</li>");

        }

    });

    //實例化AppView

    var appview = new AppView;

})(jQuery);

</script>

</html>

我認為代碼是直觀的,這里面涉及到backbone的三個部分,view、model、collection,以后都會提到,這里只要了解,model代表一個數(shù)據(jù)模型,collection是模型的一個集合,而view是用來處理頁面以及簡單的頁面邏輯的。

更多信息請查看網(wǎng)絡編程

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)