0

navigationMenu.plist在 Wonder 网站上有一个非常简单的例子:

(    
    {
        name = Root;
        directActionClass = DirectAction;
        directActionName = default;
        children = "session.navigationRootChoice";
        childrenChoices = {
            home = (
                Posts,
                Authors,
            );
        };
    },
    {
        name = "Posts";
        action = "session.navController.listPostsAction";
        children = ("CreatePost","SearchPosts");
        conditions = ("context.hasSession");
    },
    {
        name = CreatePost;
        action = "session.navController.createPostAction";
    },
    {
        name = SearchPosts;
        action = "session.navController.searchPostsAction";
    },
    {
        name = Authors;
        action = "session.navController.listAuthorsAction";
        children = ("CreateAuthor","SearchAuthors");

    },
    {
        name = CreateAuthor;
        action = "session.navController.createAuthorAction";
    },
    {
        name = SearchAuthors;
        action = "session.navController.searchAuthorsAction";
    }
)

但是,当我运行应用程序时,没有显示子菜单。我很确定这必须是一个需要打开的属性。任何想法将不胜感激。

谢谢。

4

1 回答 1

0

我认为孩子是一个字符串数组。从我的 NavigationMenu.plist 之一

{
    name = Root;
    children = ("Home","Person","Computer", "ComputerModels");
},
{
    name = "Home";
    action = "session.navController.homeAction";
},
{
    name = Person;
    action = "session.navController.listPersonAction";
    children = ("createPerson", "findPerson", "Logout");
},
{
    name = createPerson;
    action = "session.navController.createPersonAction";
},
{
    name = findPerson;
    action = "session.navController.findPersonAction";
}

不要忘记在您的规则模型中设置 navigationState 规则。

50 : pageConfiguration like '*Person' => navigationState = "Person" [com.webobjects.directtoweb.Assignment]

于 2015-09-16T00:00:32.837 回答