- سهشنبه 28 مهر 1405 ساعت 15:00
- 3.1.9
- کامل شده
- منقضی شده
JavaScript Class در CodeIgniter 3 برای تولید کد و ارجاعهای JavaScript از سمت PHP در نظر گرفته شده است و میتواند با Driver مربوط به jQuery کار کند. این کلاس برای پروژههای قدیمی که تولید اسکریپت را در سمت سرور انجام میدادند کاربرد دارد، اما در توسعه جدید معمولاً مدیریت فایلهای JavaScript در لایه Frontend شفافتر است.
ساختار و API اصلی
کتابخانه را با Driver موردنظر بارگذاری کنید و از متدهای آن برای ساخت خروجی یا ثبت رویدادهای JavaScript استفاده کنید. تنظیمات Driver و نسخه jQuery باید با ساختار قالب هماهنگ باشد. از تولید رشتههای JavaScript با داده خام کاربر خودداری کنید.
نمونه استفاده
$this->load->library('javascript');
$this->load->library('javascript/jquery');
// Use the configured driver to generate the required client-side output.نکته مهم
کد تولیدشده را در مرورگرهای هدف آزمایش کنید و از قراردادن داده کنترلنشده داخل Script جلوگیری کنید. برای پروژههای جدید، Bundler و فایلهای مستقل JavaScript معمولاً نگهداریپذیرتر هستند.
مطالعه مرتبط
برای ادامه مطالعه، MVC، کوئری، ترنزکشن را ببینید.
کار با JavaScript Driver
| متد یا مفهوم | کاربرد |
|---|---|
initialize($config) | تنظیم Driver و کتابخانه JavaScript. |
event() | تعریف رویداد سمت مرورگر در API قدیمی. |
effect() | تعریف افکتهای پشتیبانیشده توسط Driver. |
corner() و modal() | توابع وابسته به Driver انتخابی. |
نکته | برای پروژه جدید، فایلهای مستقل JavaScript و ابزار Build معمولاً قابل نگهداریتر هستند. |
نحوه استفاده و عیبیابی
در یک Controller ابتدا Library را با Loader بارگذاری کنید، سپس تنظیمات محیطی را به آن بدهید و عملیات را اجرا کنید. نتیجه را از مسیر مشخص دریافت کنید و در صورت شکست، پیام خطا را در Log ثبت کنید. اگر Library به Driver خارجی وابسته است، وجود افزونه PHP یا برنامه موردنیاز را روی سرور بررسی کنید.
در محیط توسعه، مسیر موفق و مسیر خطا را جداگانه آزمایش کنید. ورودی خالی، مقدار نامعتبر، فایل بزرگ، Timeout سرویس خارجی و نبود مجوز نوشتن از سناریوهایی هستند که باید بررسی شوند. منابعی مانند اتصال شبکه و فایلهای موقت را پس از پایان عملیات آزاد کنید.
در بازبینی کد، ترتیب و نتیجه متدهای initialize($config)، event()، effect()، corner() و modal() را بررسی کنید. نام متد بهتنهایی تضمین نمیکند ورودی معتبر یا خروجی امن باشد، بنابراین رفتار هر متد را با تست و مستندات همان نسخه کنترل کنید.