如何将表添加到表中?

时间:2017-07-18 02:57:56

标签: lua

我想将表'mm'添加到表'fmenu.pages'但它根本不起作用。错误:尝试索引零值(字段'main2')。它的最后一行。代码:

local fmenu = {
    selected_button = 0,
    menu = {
        font = 1,
    },
    pages = {
        ["main"] = {
            name = "name",
            id = 1,
            btns = {
                {name = "name I",  id = 1}
            }
        }
    }
}

local mm = {
    ["main2"] = {
        name = "name2",
        id = 2,
        btns = {
            {name = "name I",  id = 1},
            {name = "name II",  id = 2}
        }
    }
}

table.insert(fmenu.pages, mm)
print(fmenu.pages["main2"].name)

1 个答案:

答案 0 :(得分:1)

如何使用lua-stdlib中的table.merge

local table = require"std.table"

local fmenu = {
    selected_button = 0,
    menu = {
        font = 1,
    },
    pages = {
        ["main"] = {
            name = "name",
            id = 1,
            btns = {
                {name = "name I",  id = 1}
            }
        }
    }
}

local mm = {
    ["main2"] = {
        name = "name2",
        id = 2,
        btns = {
            {name = "name I",  id = 1},
            {name = "name II",  id = 2}
        }
    }
}

table.merge(fmenu.pages, mm)
print(fmenu.pages["main2"].name)