首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果未连接,mithril.js重定向用户

如果未连接,mithril.js重定向用户
EN

Stack Overflow用户
提问于 2015-11-06 20:03:23
回答 1查看 571关注 0票数 1

当用户尚未连接时,如何使用mithril.js及其路由系统将我的用户重定向到登录表单?

我定义了一些路线:

代码语言:javascript
复制
m.route.mode = 'search';
m.route(document.getElementById('app'), "/", {
    '/': LoginForm,
    '/orders': OrderList,
    '/order/new': OrderForm,
    '/order/:orderId': OrderForm
});

但是,如果用户没有登录,我希望将/orders和其他路由重定向到/。

我是否需要将代码放入控制器(OrderList.controller和OrderForm.controller)中?还是在视图中(OrderList.view和OrderForm.view)?

代码语言:javascript
复制
window.OrderForm = {
    controller: function () {
        var ctrl = this

        if (/* user not logged */) {
            m.route('/')
            return;
        }
        // controller code
     },
     view: function(ctrl) {
        if (/* user not logged */) {
            m.route('/')
            return;
        }
        // view code
        return m('....');
     }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-07 03:52:58

你应该把方向调到控制器。

在这种情况下,重定向是在requestAnimationFrame之前调用的,因此您被重定向到适当的控制器并呈现适当的视图。

在视图重定向的情况下,您可能没有正确地重定向,视图无论如何都会呈现出来。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33574816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档