Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.02.2019, 13:22
Аспирант
Отправить личное сообщение для alex-romanov Посмотреть профиль Найти все сообщения от alex-romanov
 
Регистрация: 02.02.2019
Сообщений: 67

Может ли плагин принимать несколько параметров
Например, есть плагин, который принимает только параметры.

$.fn.createTablePlugin = function (methods, prop) {

 var options = $.extend({

                selectorForCreateElemInto: 'body',
                classTableName: nameTable,
                classTableHeadName: nameTableHead,
                classTableBodyName: nameTableBody,
                messageForPluginDataTables: messageRuForPluginDataTables,

                arrTh: [], /*['id', 'имя', 'возраст', 'login']*/
                arrDataAttrName: [], /*[ {'data-dataType': 'dateType'}, {data-dataType': 'nameType','data-maxLength': '7',}]*/
                styleForTable: styleAttributesForTable,
                styleForTh: styleAttributesForTh,
                styleForTd: styleAttributesForTd,
                url: '', /*адрес, для запроса данных от сервера*/
                selectorErrMessageFromServer: '' /*селектор, указывающий на вывод сообщений об ошбике*/

            }, prop);


}



Там очень много работы сделано.
Теперь нужно создать массив методов, которые могут подключать дополнительные сторонние плагины.
Например, у меня плагин создает таблицу от начала до конца, он же отправляет ajax-запрос на сервер, получает данные, разбирает их , создается таблица с этими данными.

И еще я здесь же подключил плагин DataTables, с многочисленными настройками.

Хочется чтобы плагин стал более универсальным.
Иногда его достаточно, с его стилями создать таблицу и нет нужды подключать DataTables, поэтому с помощью методов и скрипта хотел бы настроить возможность, где будет вызываться мой плагин,
При этом сделать так, чтобы можно было указывать если нужно метод, который будет подключать с нужными настройками мой плагин, если же метод не указан
тогда должна выполняться настройка и создание таблицы по умолчанию
со своими стилями.

А как это принимать в плагине , как разбирать такие параметры ?

https://thimbleprojects.org/alex-r/638619
Ответить с цитированием
  #2 (permalink)  
Старый 15.02.2019, 13:33
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,705

Мне кажется вы куда-то не туда двигаетесь с плагинами jQ.
Не все в js - плагины jQuery.

Что вам нужно так и не понял.
Сложно читать сложносочиненное предложение содержащее под 50 слов и не потерять мысль.
Ответить с цитированием
  #3 (permalink)  
Старый 16.02.2019, 03:04
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Сообщение от alex-romanov
есть плагин, который... сторонние плагины... плагин создает... подключил плагин DataTables,... чтобы плагин стал... мой плагин... мой плагин... в плагине...
Это не плагин, это метод расширения. Это такой метод, добавляемый к существующему классу в месте, отличном от объявления класса.

Вместо того, чтобы расширять существующий jQuery, вы можете создать класс, описывающий «jquery» таблиц. И в нём описать все методы необходимые для работы с «jquery» таблиц.
class TableExtension extends jQuery {
	constructor(options) {
		super("table");
		this.__proto__ = TableExtension.prototype;

		this.options = this.extend(this.constructor.defaultOptions, options);
	}

	static get defaultOptions() {
		return {

		};
	}
}
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
панель сортировки каталога, общий Get на несколько текущих параметров ef1 Элементы интерфейса 2 11.07.2017 14:34
Как передать через onchange несколько параметров? Arey AJAX и COMET 5 14.08.2012 16:31
Передача параметров в плагин и namespacing Viper jQuery 2 26.04.2012 16:03