我们可以直接使用require(“model_name”)来载入别的lua文件,文件的后缀是.lua。载入的时候就直接执行那个文件了。比如:
我们有一个hello.lua的文件:
print("Hello, World!")
注意:
1)require函数,载入同样的lua文件时,只有第一次的时候会去执行,后面的相同的都不执行了。
2)如果你要让每一次文件都会执行的话,你可以使用dofile(“hello”)函数
3)如果你要玩载入后不执行,等你需要的时候执行时,你可以使用 loadfile()函数,如下所示:
local hello = loadfile("hello") ... ... ... ... hello()
loadfile(“hello”)后,文件并不执行,我们把文件赋给一个变量hello,当hello()时,才真的执行。
当然,更为标准的玩法如下所示。
假设我们有一个文件叫mymod.lua,内容如下:
local HaosModel = {} local function getname() return "Hao Chen" end function HaosModel.Greeting() print("Hello, My name is "..getname()) end return HaosModel
于是我们可以这样使用:
local hao_model = require("mymod") hao_model.Greeting()
其实,require干的事就如下:(所以你知道为什么我们的模块文件要写成那样了)
local hao_model = (function () --mymod.lua文件的内容-- end)()