@glebvvs

Как организовать Jquery файл?

Всем привет. Рад был бы услышать рекомендации относительно того насколько хорош или плох ниже указанный код с использованием ajax. Выбрал из проекта самый небольшой файл. Интересует следующее, какие бы вы дали рекомендации относительно того, чтобы привести данный код или к более элегантному виду или просто приблизить его к стандартам написания кодов на библиотеке jquery.

(function( $ ) {

  $(document).ready(function() {
    var
    firstIdPostPerPage = 0,
    countPostsPerPage = 5,
    $container = $('#posts'),
    $showMore = $('#show-more');

    var stringIsEmpty = function(variable) {
      if (variable == '') {
          return true;
      }
      return false;
    };

    var showPosts = function() {
      $.ajax({
        'url': '/get-posts',
        'type': 'GET',
        'data': {
          'firstIdPostPerPage': firstIdPostPerPage,
          'countPostsPerPage': countPostsPerPage
        },
        'success': function(component) {
          if ( stringIsEmpty(component) ) {
              alert('No more posts!');
          }
          $container.append(component);
        }
      });
    };

    var showMore = function() {
      $showMore.on('click.posts', function(e) {
        e.preventDefault();
        firstIdPostPerPage += countPostsPerPage;
        showPosts();
      });
    };

    showPosts();
    showMore();
  });

})( jQuery );
  • Вопрос задан
  • 76 просмотров
Решения вопроса 1
Сказали бы какой именно ES вам нужен.

Ну вот:
1. Зачем функция stringIsEmpty(). Ее ведь можно просто заменить на это - response === ''
2. Лучше в sucсess аргумент назвать response.
3. Все переменные которые никогда не буду меняться, объявляются через const, если нет, то let. Оф. документация var использовать вообще не советует.
4. Зачем свойства писать в виде строки? Это не обязательно.
5.
// Это
'data': {
    'firstIdPostPerPage': firstIdPostPerPage,
    'countPostsPerPage': countPostsPerPage
},
// можно заменить на это
data: {
    firstIdPostPerPage,
    countPostsPerPage
},

6. Вместо == используйте всегда строгое равенство - ===. Это нужно для единого code style. Вот хороший Style Guide от AirBnB

Вот код который получился
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
КРАФТТЕК Санкт-Петербург
от 60 000 до 80 000 ₽
Brightdata Тель-Авив
от 5 500 до 6 500 $
Rocket Брянск
от 60 000 до 100 000 ₽
22 мая 2024, в 00:08
2500 руб./за проект
21 мая 2024, в 23:47
30000 руб./за проект