ModuleScript

Pokaż przestarzałe

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

ModuleScript to typ kontenera źródłowego Lua, który zostanie wykonany raz i musi zwrócić dokładnie jedną wartość. Ta wartość zostanie następnie zwrócona przez wezwanie do require , zależnie od środowiska Lua.ModuleScripty zostaną wykonane tylko raz na każde środowisko Lua i zwrócą dokładnie tę samą wartość dla następnych wezwania do require.

ModuleScripts są niezbędnymi obiektami do przestrzegania zasady nie powtarzania się (DRY). Gdy piszesz funkcję, pisz ją tylko raz i używaj jej wszędzie. Posiadanie wielu kopii funkcji jest katastrofalne, gdy musisz zmienić zachowanie. Więc, powinieneś zdefiniować funkcje lub grupy funkcji w ModuleScripts i mieć swoje fun

Ważne jest, aby wiedzieć, że wartości zwracane z ModuleScripts są niezależne wobec lokalnych skryptów i skryptów, a inne środowiska, takie jak Roblox StudioKomend. Używanie require naModuleScript w lokalnym środowisku z Konsoli Komend będzie

Uwaga, że pierwszy call do require naModuleScript nie zwróci wyniku (halt), chyba że ModułScript zwróci wynik (

Jeśli ModuleScript zostanie przesłany do Roblox i moduł korzeni ma ustawioną nazwę MainModule, można go załadować jako modelu i wymagany używając require() z ID zasobu modułu. Następnie można go

Przykłady kodu

The code sample starts by creating a local variable holding an empty table. It then fills the table with two placeholder functions, and then finally returns the table. Using this code in a ModuleScript would make the my_functions table (and thus any functions, tables or other values within it) available to any Script, LocalScript or other ModuleScript.

Simple ModuleScript Example

-- Tables store multiple values in one variable
local MyFunctions = {}
-- Add a few functions to the table
function MyFunctions.foo()
print("Foo!")
end
function MyFunctions.bar()
print("Bar!")
end
-- ModuleScripts must return exactly one value
return MyFunctions

This code sample shows how to use the require function on a ModuleScript, then use the value that it returned. See the "Simple ModuleScript Example" for the code to go with this sample.

Simple ModuleScript Usage

-- The require function is provided a ModuleScript, then runs
-- the code, waiting until it returns a singular value.
local MyFunctions = require(script.Parent.MyFunctions)
-- These are some dummy functions defined in another code sample
MyFunctions.foo()
MyFunctions.bar()

Właściwości

Source

Odczyt równoległy
Zabezpieczenia dodatku plug-in
Zabezpieczenia OpenCloud

Kod do wykonania.

Jeśli chcesz przeczytać lub zmienić otwarty przez użytkownika skrypt, rozważ użycie ScriptEditorService aby wejść w interakcję z Edytorem Skryptów zamiast tego.

Metody

Zdarzenia