2012-09-13 94 views
1

我在學習如何使用backbone.js。問題是我正在使用的教程(Railscast)正在使用coffeescript,我寧願使用jquery。我知道如何在CoffeeScript的改變功能的jQuery,但我不知道該怎麼改一下路線Backbone.js:將此coffeescript轉換成jquery

routes: 
    '': 'index' 

上午的這個定義我應該把它周圍的括號?警報不起作用,所以我假定路線的定義出了問題。

這是原來的CoffeeScript

Backboner.Routers.Entries = Backbone.Router.extend 


     routes: 
     '': 'index' 

     index: -> 

     alert "homepage" 

的JavaScript/jQuery的

Backboner.Routers.Entries = Backbone.Router.extend({ 


    routes: 
    '': 'index' 

    index: function(){ 

    alert("homepage"); 
    } 
}); 

更新:我提出了建議,但警報的沒有出現變化。

的Javascript/Backboner.js

window.Backboner = { 
    Models: {}, 
    Collections: {}, 
    Views: {}, 
    Routers: {}, 
    init: function() { 
    new Backboner.Routers.Entries(); 
    Backbone.history.start(); 
    } 
}; 

的Javascript /路由器/ entries.js

Backboner.Routers.Entries = Backbone.Router.extend({ 

    routes: { 
    '': 'index' 
    }, 


    index: function(){ 

    return alert('homepage'); 
    } 
}); 

二更新:

把文件準備到文件

window.Backboner = { 
    Models: {}, 
    Collections: {}, 
    Views: {}, 
    Routers: {}, 
    init: function() { 
    new Backboner.Routers.Entries(); 
    Backbone.history.start(); 
    } 
}; 

$(document).ready(function() { 
    return Backboner.init(); 
}); 

第三向上日期

清單文件

//= require jquery 
//= require jquery_ujs 
//= require underscore 
//= require backbone 
//= require backboner 
//= require_tree ../templates/ 
//= require_tree .//models 
//= require_tree .//collections 
//= require_tree .//views 
//= require_tree .//routers 
//= require_tree . 

回答

0

簡短的回答是肯定的,你應該把它周圍的花括號。將來,您可以通過點擊「Try CoffeeScript」在CoffeeScript.org上將CoffeeScript轉換爲Javascript。粘貼到CoffeeScript中,您將看到Javascript輸出。

請記住,CoffeeScript有顯着空白,所以你原來的問題是格式不正確。它應該是:它使用的CoffeeScript網站

Backbone.Routers.Entries = Backbone.Router.extend 

     routes: 
     '': 'index' 

     index: -> 

     alert "homepage" 

給出:

Backbone.Routers.Entries = Backbone.Router.extend({ 
    routes: { 
    '': 'index' 
    }, 
    index: function() { 
    return alert("homepage"); 
    } 
}); 
+0

謝謝,我做出了您所建議的更改,但警報沒有出現。我更新了OP。你知道爲什麼當我導航到索引時警報沒有顯示嗎? – Leahcim

+0

你是否啓動路由器? –

+0

是不是我在OP的更新部分做了什麼? – Leahcim

0

有時,當我要趕緊去來回在兩者之間進行一個混亂的局面,我會使用這個工具..它至少會嘗試自動化Javascript - > CoffeeScript轉換。

Use js2coffee.org at your own risk :)

課程的CoffeeScript點 - >使用Javascript你可以使用CoffeeScript的網站。