Создание и подключение JS-модуля

search

Для того, чтобы разрабатывать javascript модульно, Prologue-Framework использует систему jS модулей.

Создание и подключение модуля

	
	JS::loadModule('app/myModule');
	

При вызове этой функции, создастся файл /Project/static/js/app/myModule.js со следующим содержимым:

	
	/**
	 * @author PrologueFramework
	 * @description module created 2017-07-13 22:52:51
	 * @constructor
	 * @this myModule
	 * @param prData
	 */
	var myModule = function (prData) {

	    function index() {

	        sampleModule();
	    }

	    function sampleModule() {
	        sampleModule__sampleClickHandler();
	    }


	    function sampleModule__sampleClickHandler() {
	        $(document).on('click', '.js_buttonGetSampleData', function () {
	            sampleModule__sampleClickHandler_sampleAjaxHandler($(this));
	        });
	    }

	    function sampleModule__sampleClickHandler_sampleAjaxHandler(obj) {
	        $.ajax({
	            url: '',
	            type: 'get',
	            dataType: 'json',
	            data: {
	                action: 'getData',
	                id: obj.data('id')
	            },
	            success: function (jsonData) {

	            }
	        });
	    }

	    index();
	};
	

В файле описан модуль с примером обработки простейших событий. Стоит отметить то, что именно в такой структуре рекомендуется разрабатывать js модули.

Передача данных в js модуль

	
    JS::loadModule('app/myModule',
        [
            'text' => 'Hello, Prologue!',
        ]
    );
	

Вторым аргументом передается массив в котором ключами являются имена свойств js-объекта prData с соответствующими значениями.

 

В данном примере в js модуле app/myModule станет доступно следующие свойство prData.text со значением: Hello, Prologue!

© 2015 - 2018