3

让我在 Lua 中沾沾自喜,为魔兽世界写一些简单的插件。主要是查看其他插件,检查代码等。我看到一件事让我感到困惑。我知道这...是一种将可变数量的参数传递给函数的方法,但我看到它在.lua文件的开头使用:

local parent, ns = ...

同样,这是源代码中的第一行。我看到的对文件的唯一引用是在.xml文件中,作为脚本包含在内

<Ui>
    <Script file="unitframes\options\ouf.lua"/>
</Ui>

我很好奇传入的值来自哪里......

回答:

正如下面的答案所示,WoW 正在将参数传递给脚本。显然,WoW 将以下参数传递给脚本:

  1. 字符串形式的插件名称(实际上是文件夹名称)
  2. AddOn 唯一的表(通常用作 AddOn 的命名空间)。此表与插件中的所有 lua 文件共享,并提供仅“插件”作用域的上下文。
4

1 回答 1

4

“在 Lua 中编程”的第 8 页

在脚本的主体中,表达式“...”导致脚本的参数。

因此ans应该接收 WOW 传入的前两个参数。

于 2012-11-26T14:16:35.293 回答