26 lines
1011 B
JavaScript
26 lines
1011 B
JavaScript
const { LuaFactory } = require('wasmoon');
|
|
|
|
const main = async () => {
|
|
const luaFactory = new LuaFactory();
|
|
const lua = await luaFactory.createEngine({ enableProxy: false });
|
|
|
|
lua.global.set("data", { a: 1, b: 2 });
|
|
await lua.doString("print(11, data.a)").catch(console.error);
|
|
await lua.doString("print(12, pairs(data))").catch(console.error);
|
|
|
|
lua.global.set("getData", () => ({ a: 1, b: 2 }));
|
|
await lua.doString("data = getData()");
|
|
await lua.doString("print(21, data.a)").catch(console.error);
|
|
await lua.doString("print(22, pairs(data))").catch(console.error);
|
|
|
|
lua.global.set("data", { data: { a: 1, b: 2 } });
|
|
await lua.doString("data = data.data");
|
|
await lua.doString("print(31, data.a)").catch(console.error);
|
|
await lua.doString("print(32, pairs(data))").catch(console.error);
|
|
|
|
await lua.doString("data = { a = 1, b = 2 }");
|
|
await lua.doString("print(41, data.a)").catch(console.error);
|
|
await lua.doString("print(42, pairs(data))").catch(console.error);
|
|
};
|
|
|
|
main().catch(console.error); |