在Aurelia创建NavigationStrategy

时间:2018-02-27 20:27:49

标签: wordpress aurelia

我尝试使用Aurelia作为自定义Wordpress主题的平台。

我想要做的是在Wordpress中定义我的导航菜单,使用Wordpress插件进行菜单,通过Wordpress API将菜单作为JSON字符串公开,然后在Aurelia中构建导航菜单。

到目前为止我发现的所有内容都涉及创建一个简单的单行菜单。

有没有人这样做过,或者能指出我正确的方向?

1 个答案:

答案 0 :(得分:1)

由于您正在使用服务器端数据来构建导航菜单,因此您可以让服务器完成繁重的工作,并让它为您的路由器生成即用型配置。

让你的插件像这样生成JSON:

EntryForms.find({_id: result._id}, function(err, res) {

然后在您的根视图模型的configureRouter中,您可以执行以下操作:

{
  "routes": [
    {
      "route": "\"...\"",
      "moduleId": "\"...\"",
      "settings": {
        "childRoutes": [
          {
            "route": "\"...\"",
            "moduleId": "\"...\"",
          }
        ]
      }
   ]
}

子路由存储在配置的async configureRouter(config, router) { const resp = await http.fetch("api/menu-plugin-uri"); const json = await resp.json(); config.map(json.routes); } 对象中,这意味着我们可以使用它来构建导航菜单,我们可以在子路径中访问它,如下所示:

settings

这不会给你带configureRouter(config, router) { const parentConfig = router.parent.currentInstruction.config; config.map(parentConfig.childRoutes); } 的{​​{1}}以及所有内容,但这与当前嵌套导航菜单的效果差不多。

我实际上正在研究一个plugin来尝试解决其中一些限制,但尚未准备好进行生产。