2012-07-16 163 views
0

我想在流星中定義一個默認的錯誤頁面。這是如果應用程序崩潰或發生其他錯誤,用戶應該被重定向到一個「友好」的頁面,說:像系統不可用,請聯繫等等。 有什麼辦法來實現這個或類似的東西嗎?默認錯誤頁面

謝謝

回答

2

你必須使用BackboneJS(Backbone Router)進行路由。通過這段代碼,會話變量'page_type'讓你知道你是否在錯誤的URL上。

var BackboneRouter = Backbone.Router.extend({ 
    routes: { 
    "/":   "default", 
    ":error":  "list" 
    }, 
    default: function() { 
    Session.set("page_type", "default"); 
    }, 
    error: function() { 
    Session.set("page_type", "error"); 
    } 
}); 

Router = new BackboneRouter; 

Meteor.startup(function() { 
    Backbone.history.start({pushState: true}); 
}); 

現在您可以使用'page_type'來告訴模板引擎加載哪個模板。

Template.tmp.route = function() { 
    if (Session.get("page_type") == "default") { 
    return true; 
    } else { 
    return false; 
    } 


<template name="tmp"> 
{{#if route}} 
    {{> default}} 
{{else}} 
    {{> error}} 
{{/if}} 
</template>