当我尝试触发 urlMethod update 时,router.transitionTo('chat.index') 被中止 isAborted:true,我无法弄清楚为什么会发生这种情况,请协助。
另一方面,我能够使用 router.transitionTo('/categories') 或 router.transitionTo('/users') 来触发和导航,所以我很困惑为什么只有聊天页面导航失败。
当我尝试触发 urlMethod update 时,router.transitionTo('chat.index') 被中止 isAborted:true,我无法弄清楚为什么会发生这种情况,请协助。
另一方面,我能够使用 router.transitionTo('/categories') 或 router.transitionTo('/users') 来触发和导航,所以我很困惑为什么只有聊天页面导航失败。
导航真的失败了吗?还是它工作正常,只是在控制台打印了一个错误?
如果只是控制台中的错误,那可能是因为 chat.index 是一个重定向,所以你需要类似这样的代码:
router.transitionTo("chat.index").followRedirects();
导航失败。
尝试了您建议的带重定向的方案后,我在控制台中看到了此输出:
{
“_id”: 298,
“_state”: 2,
“_result”: {
“name”: “TransitionAborted”,
“code”: “TRANSITION_ABORTED”
},
“_subscribers”:
}
是否有另一种触发导航的方法?也许有更合适的方法可以做到这一点,我想实现的是点击自定义按钮即可将用户带到聊天页面。@david
这个想法对我来说是合理的。我刚在 meta 上的开发者控制台中尝试了:
Discourse.lookup("service:router").transitionTo("chat.index")
它似乎运行正常。
您测试的用户是否确定可以使用聊天功能?
是的,先生,聊天室可用。我实际上可以通过修改页面 URL 到 https://forum.finsweet.com/chat 来手动导航到聊天页面,并且在加载时它会被重定向到 https://forum.finsweet.com/chat/c/general/2
但是执行 Discourse.lookup("service:router").transitionTo("chat.index") 会失败。
您运行的是最新通过测试的 Discourse 版本吗?能否分享一下该论坛的网址?
已在上面分享 https://forum.finsweet.com
您能尝试进入安全模式,然后在控制台中运行该命令吗?我想知道是否是某个主题或插件的自定义设置影响了过渡 ![]()