1

只是想知道为什么我的路由器没有导航方法?

我已经new App.Router;正确调用了。在我看来,我尝试像这样调用我的索引视图:

addTrip: function(e){

    e.preventDefault() ;

    //Adding to collection
    var newTrip = this.collection.create({
        title: this.$('#new_trip #title').val(),
        where: this.$('#new_trip #where').val(),
        desc: this.$('#new_trip #desc').val(),
        rating: this.$('#new_trip .active').text()
    }, { wait: true })  ;

    if(newTrip.validationError){
        this.errorReport(newTrip.validationError) ;
    }

    this.clearForm() ;

    //Navigate to home route
    App.Router.navigate('', true) ;

}

我在 Chrome 开发工具中收到以下错误:

Uncaught TypeError: Object function (){ return parent.apply(this, arguments); } has no method 'navigate'

我什至尝试从控制台调用导航,但它似乎也不起作用。

我究竟做错了什么?

4

1 回答 1

9

您应该在路由器对象上调用导航。看来您是在课堂上调用它。

App.myRouter = new Backbone.Router() //or if you have your own base router class App.myRouter = new App.Router() 


myRouter.navigate('', true);
于 2013-03-25T10:22:01.687 回答