当前位置: 首页 > news >正文

【Lua】多脚本引用

在当前脚本引用其他脚本:require("脚本名")

package.loaded()

package.loaded返回的本身是一个Lua的全局表,它也被存储在了_G表中,即

package.loaded_G["package"].loaded_G["package"]["loaded"]三者本质上一样

它用于记录已经被require()加载过的模块

package.loaded["脚本名"] 只能返回一个值,它的本质是一个table的查找操作,即从package.loaded这个table中取出键为“脚本名”的值

例子:

local result = package.loaded["脚本名"]

1.package.loaded["脚本名"] 前有require("脚本名")

a.若被加载的脚本有return值:获取到的result值为return的第一个值

b.若被加载的脚本没有return值:获取到的result值为true

2.package.loaded["脚本名"] 前没有require("脚本名")

a.result值为nil

被加载的脚本再次调用require不会被二次加载,当脚本被第一次加载后,会被存储在package.loaded这个table内,package.loaded["脚本名"]存储了对应的引用,而在每次的require时,会再次检查这个表,看看是否已经加载了对应的脚本。

http://www.dtcms.com/a/288808.html

相关文章:

  • Java反射:打破静态限制的利器
  • 【笔记】Anaconda 重装后虚拟环境写入路径异常的完整排查与解决过程
  • MySQL—表设计和聚合函数以及正则表达式
  • LeetCode 1712.将数组分成三个子数组的方案数
  • ZooKeeper学习专栏(二):深入 Watch 机制与会话管理
  • BST(二叉搜索树)的笔试大题(C语言)
  • [硬件电路-59]:电源:电子存储的仓库,电能的发生地,电场的动力场所
  • 手推OpenGL相机的正交投影矩阵和透视投影矩阵(附源码)
  • 【AI】文生图文生视频
  • 第三章自定义检视面板_创建自定义编辑器类_编辑器操作的撤销与恢复(本章进度3/9)
  • 使用pnpm安装项目的生产依赖dependencies和开发依赖devDependies及pnpm工作空间等简单使用方法说明
  • Function
  • Qwen3-8B 与 ChatGPT-4o Mini 的 TTFT 性能对比与底层原理详解
  • Docker实战:使用Docker部署envlinks极简个人导航页
  • Springboot美食分享平台
  • 【Kafka】深入理解 Kafka MirrorMaker2 - 实战篇
  • Mac m系列 VMware Fusion虚拟机安装ARM contos
  • host.equiv,.rhosts,inetd.conf文件的作用
  • Python应用进阶DAY10--模块化编程概念(模块、包、导入)及常见系统模块总结和第三方模块管理
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘beautifulsoup4’问题
  • 响应式编程入门教程第九节:UniRx 高级特性与自定义
  • python doipclient库
  • 学习C++、QT---30(QT库中如何自定义控件(自定义按钮)讲解)
  • XSS知识总结
  • Ajax简单介绍及Axios请求方式的别名
  • MyBatis从浅入深
  • SQL中的EXPLAIN命令详解
  • python的pywebview库结合Flask和waitress开发桌面应用程序简介
  • HarmonyOS 网络请求优化实战指南:从0到1写出流畅不卡顿的应用!
  • `tidyverse` 中涉及的函数及其用法