Termux для Android

Данное приложение предназначено для установки nodejs на устройство под управление ОС Android. В Google Play находим приложение Termux и устанавливаем на телефон (требуется минимальная версия android 5). Запускаем приложение и устанавливаем нужные пакеты, выполнив следующие команды:

apt update
apt upgrade
apt install coreutils
apt install nodejs
Читать далее «Termux для Android»

Вызов this.callParent(arguments) в асинхронных методах

Бывает ситуация когда нужно вызвать родительский метод в асинхронной функции и простой операция не работает:

// метод используется в прокси

/**
 * Переопределен. Вызывается при завершении синхронизации
 */
onBatchComplete: function (batch, operation) {
    var me = this;
    setTimeout(function () {
        me.callParent(arguments);
    }, 1000);
}
Читать далее «Вызов this.callParent(arguments) в асинхронных методах»

Бесплатный SSL на собственный сервер

Установка SSL сертификата от Let’s Encrypt на собственный сервер. Доменное имя у меня зарегистрировано на reg.ru. Мои шаги:

  • Переходим по ссылке и выбираем нужные конфигурации сервера. Я выбрал nginx и ubuntu 14
  • Выполняем команды
Читать далее «Бесплатный SSL на собственный сервер»

Применение событие с Ext.mixin.Observable

У нас стоит задача создать ExtJS объект без применения наследования от Ext.Base или Ext.Component и чтобы можно было использовать события.

Для реализации данной задачи нам поможет объект Ext.mixin.Observable
Пример инициализации класса: Читать далее «Применение событие с Ext.mixin.Observable»

Файловый менеджер на ExtJS

Для применения в проектах ExtJS «файлового менеджера» нужно подключить пакет filer_package. Инструкция тут

Данный пакет содержит набор компонентов для работы с файловой системой

  • IServ.Filer.Panel — панель для вывода информации из файловой системы
  • IServ.Filer.data.Filer — хранилище (Store) для работы с ФС
  • и т.д. Подробнее о компонентах тут

Читать далее «Файловый менеджер на ExtJS»

Компонент для выбора нескольких значений IServ.UX.Classic.StringTagField

Компонент IServ.UX.Classic.StringTagField предназначен для выбора нескольких значений и преобразовании результата в строку с разделителем в виде запятой.

Компонент является наследником Ext.form.field.Tag Читать далее «Компонент для выбора нескольких значений IServ.UX.Classic.StringTagField»

API для mysql-simple-rpc

Серверное приложение основанное на mysql-simple-rpc

git clone git://git.appcode.pw/mysql-simple-rpc.git
npm install
# в файле ~/configs/app.json меняет строку подключения
cd refresh
npm install
cd ..
node refresh # обновляем схемы
node generator # генерируем провайдер

поддерживают следующие открытые API:

  • ~/tpl/:type/:folder/:name — получение общих шаблонов
  • ~/tpl-api/:type/:name/:field? — получение специфичных шаблонов

Читать далее «API для mysql-simple-rpc»

Тестирование ExtJS проектов

Статья: Плагин autotest-plugin для VSCode

Тестирование NodeJS проекта отличается от ExtJS

  • применяется siesta вместо nodeunit
  • добавлена возможность проверки класса
  • есть возможность тестирования в браузере

Для тестирования ExtJS применяется проект siesta. Он позволяет производить тестирование в браузере компоненты ExtJS’a Читать далее «Тестирование ExtJS проектов»

Плагин autotest-plugin для VSCode

Плагин предназначен для автоматического тестирования проектов на nodejs

Для корректной работы плагина требуется наличие следующих утилит:

  • jsdoc
    npm install -g jsdoc
    jsdoc -v // для проверки
  • nodeunit
    npm install -g nodeunit
    nodeunit -v // для проверки

Инструкция по генерации и установке плагина

npm install -g vsce // эту команду можно не выполнять если пакет vsce был установлен до этого. подробнее https://code.visualstudio.com/docs/extensions/publish-extension
git clone git://git.appcode.pw/autotest-plugin.git
npm install
vsce package

Читать далее «Плагин autotest-plugin для VSCode»