Nói rằng tôi có một dự án, có thư mục cấu hình như dưới đây:Cách sắp xếp đường dẫn mô-đun Lua và viết các cuộc gọi "yêu cầu" mà không mất tính linh hoạt?
| main.lua
|
|---<model> // this is a folder
| |a.lua
| |b.lua
|
|---<view>
|a.lua
|b.lua
mô hình/a.lua requries mô hình/b.lua: require "b"
xem/a.lua requries xem/b.lua: require "b"
main.lua tệp requries trong mô hình và xem.
Bây giờ tôi gặp sự cố để tải các mô-đun này một cách chính xác. Tôi biết tôi có thể sửa chữa nó bằng cách thay đổi đòi hỏi các cuộc gọi đến:
mô hình/a.lua: require "model.b"
xem/a.lua: require "view.b"
Nhưng nếu tôi làm điều đó, tôi phải sửa đổi các tệp này mỗi khi tôi thay đổi cấu trúc thư mục.
Vì vậy, câu hỏi của tôi là:
- Làm thế nào để khắc phục vấn đề con đường module mà không cần đường dẫn mã cứng trong các tập tin mô-đun?
- Tại sao Lua không sử dụng quy tắc tìm kiếm mô-đun của Node.js, trông dễ dàng hơn?
Cảm ơn bạn đã chỉnh sửa và trả lời. Nhưng các dự án luôn luôn lớn từ nhỏ, và họ luôn luôn cần refactor. Thật khó để lập kế hoạch ở giai đoạn đầu.Khi không có sự phụ thuộc bên ngoài ngoại trừ ANSI C, tôi đồng ý đó là một lợi thế lớn. Nhưng điều này không xung đột với quy tắc tìm kiếm mô-đun di động hơn. – Chen