Средства хранения данных на клиентской стороне.

Куки

Куки это классический способ хранения простых строчных данных внутри документа. Обычно куки отсылаются с сервера на клиент, который может сохранять их, а затем отправлять обратно на сервер в ответ на последующие запросы. Это может быть использовано для таких вещей, как управление сессиями аккаунта или отслеживание пользовательской информации.

Семь правил хорошего сообщения коммита

Git
  • Отделяйте заголовок от содержимого коммита пустой строкой
  • Уложите заголовок в 50 символов
  • Пишите заголовок с заглавной буквы
  • Не ставьте точку в конце заголовка
  • Используйте повелительное наклонение в заголовке
  • Ограничьте длину строк в сообщении 72 символами
  • В сообщении пишите что и почему сделано, а не как

Повелительное наклонение - это когда говорящий или пишущий дает команду или инструкцию.

Например:

  • Уберись в комнате
  • Закройте дверь
  • Вынеси мусор

Правильно сформулированным заголовком коммита всегда можно продолжить фразу:

If applied, this commit will (и здесь заголовок коммита)

Когда не нужно использовать JavaScript

JavaScript - это прекрасен и его все методы великолпны. Но время бежит вперед, и ты можешь построить свои UI компонеты без ипользования JS.

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

Сайт youmightnotneedjquery.com являеться великолпеным ресурсом где использоваться ванильный JS вместо JQuery, авторами
данного сайта стали: @adamfschwartz и @zackbloom. Но сейчас мы покажем мощь HTML и CSS с ситаксическим сахаром SASS. Потому-что, ты можешь не использовать javascript в этих задачах.

Повторяющиеся шаблоны

1
2
3
4
5
6
7
8
9
10
11
12
13
const student = {
name: "Ryan Christiani",
blogUrl: "http://ryanchristiani.com"
}
const studentTemplate = templater`<article>
<h3>${'name'} is a student at HackerYou</h3>
<p>You can find their work at ${'blogUrl'}.</p>
</article>`;
const myTemplate = studentTemplate(student);
console.log(myTemplate);

FAQ по Yii2

Компонеты

Компоненты — это главные строительные блоки приложений основанных на Yii. Компоненты наследуются от класса yii\base\Component или его наследников.

Три главные возможности, которые компоненты предоставляют для других классов:

  • Свойства
  • События
  • Поведения

REST в Yii2

REST (сокр. от англ. Representational State Transfer — «передача состояния представления») — архитектурный стиль взаимодействия компонентов распределённого приложения в сети. REST представляет собой согласованный набор ограничений, учитываемых при проектировании распределённой гипермедиа-системы.

  • Модель клиент-сервер
  • Отсутствие состояния
  • Кэширование
  • Единообразие интерфейса

Возможности Yii:

  • Быстрое создание прототипов с поддержкой распространенных API к Active Record;
  • Настройка формата ответа (JSON и XML реализованы по умолчанию);
  • Получение сериализованных объектов с нужной вам выборкой полей;
  • Надлежащее форматирование данных и ошибок при их валидации;
  • Эффективная маршрутизация с надлежащей проверкой HTTP методов;
  • Встроенная поддержка методов OPTIONS и HEAD;
  • Аутентификация и авторизация;
  • HTTP кэширование и кэширование данных;
  • Настройка ограничения для частоты запросов (Rate limiting);

Как обратиться в Bitrxi24 API REST к инфоблокам

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
application.prototype.getOptions = function(){
$('#mechickOptions').empty();
let params = {
'IBLOCK_TYPE_ID': 'gates_calculator', //Тип инфоблока (группа инфоблоков)
'IBLOCK_CODE': 'oprions_gate' //Символический код инфоблока, чтобы не привязываться к IBLOCK_ID
};
BX24.callMethod(
'lists.element.get',params,(result)=>{ //Вызов метода для получения элементов инфоблока
if (result.error()){
alert(`Error:${result.error()}`); //alert
}else{
for (let res of result.data()){
$('#mechickOptions').append(`<option value="${res.ID}">${res.NAME}</option>`);
}
if (result.more()){ //Показать следующий инфоблок
result.next();
}
}
}
);
}