JFinal

登录 注册

jfinal 从拦截器中获取 Routes的baseviewpath

官方提供的配置代码

可以直接在 configRoute(Routes me) 中调用

me.setClearAfterMapping(false) 方法。保留Routes

image.png

参考文档:

第一个参数controllerKey是指访问某个Controller所需要的一个字符串,该字符串唯一对应一个Controller,controllerKey仅能定位到Controller。第二个参数controllerClass是该controllerKey所对应到的Controller。第三个参数viewPath是指该Controller返回的视图的相对路径(该参数具体细节将在Controller相关章节中给出)。当viewPath未指定时默认值为controllerKey。

以下代码 仅适用于 viewPath未指定时默认值为controllerKey(I9LTG47F01]NTX~KOQ_JPC.png

评论

  • 01-10 11:47
    baseViewPath 只存在配置阶段, jfinal 启动时,会将 baseViewPath 与 viewPath 进行拼接,无法通过简单手段去获取 baseViewPath

    可以在拦截器中通过 inv.getViewPath() 获取拼接后的 viewPath

    如果上面这个 viewPath 不是自己想要的,可以在 YourJFinalConfig 中将 Routes me 这个对象用 static 存起来,然后在别的地方使用
  • 01-10 11:48
    或许 inv.getViewPath() 就是你想要的值,该值是 baseViewPath + viewPath 形成的
  • 01-10 13:03
    @JFinal 刚看到了 , Routes 的 setClearAfterMapping 哈哈。
  • 发送