Building Course Assist, часть 7: добавление некоторых дополнительных функций и исправление ошибок (2/2).

Этот блог является прямым продолжением предыдущего блога, который, если вы помните или читали заголовок, был посвящен добавлению некоторых дополнительных функций и исправлению ошибок. Поскольку предстояло еще очень многое сделать, я решил еще раз разделить блог на две части, и это была часть 2. В последнем блоге я рассказал о том, как я работал над оптимизацией сокетов, используемых в приложении, и добавлением список сообщений и чат. В этом блоге я расскажу об оставшихся изменениях, которые я сделал: добавил значки уведомлений на нижнюю панель навигации и пару улучшений пользовательского интерфейса в некоторых разделах приложения. Итак, без лишних слов, давайте сразу приступим🤾‍♂️.

Добавление значков на панель навигации

Первое, что я сделал, это добавил значки уведомлений на панель навигации. Что это вы спрашиваете😄? Вы знаете, когда вы используете свое любимое приложение для социальных сетей и получаете сообщение или уведомление, тогда над значком появляется маленький цветной кружок или сердце, обозначающий раздел приложения, например, значок колокольчика на Facebook? Это именно то, что я пытался воспроизвести. Значки уведомлений в Course Assist используются, чтобы указать, есть ли в приложении непрочитанные сообщения и уведомления. Значок также должен исчезнуть, как только пользователь откроет все непрочитанные сообщения и уведомления. Все это должно происходить автоматически и вот в чем была проблема🤨. Для решения этой проблемы я использовал UseContext (о котором, если вы не знаете, можете прочитать по этой ссылке😀). По сути, это просто функция React, которая позволяет вам управлять состоянием различных компонентов вашего проекта. Поэтому я настраиваю контекст в двух точках: когда приложение открыто и когда пользователь открывает неоткрытое уведомление. Таким образом, состояние постоянно обновляется, поэтому, когда пользователь открывает приложение, он сразу узнает, есть ли непрочитанное сообщение или уведомление, а также, когда пользователь открывает все уведомления или сообщения, значок автоматически исчезает. Все это стало возможным благодаря добавлению простого поля has_seen в модели уведомлений и сообщений в базе данных, которое изменяется каждый раз при нажатии на неоткрытое сообщение или уведомление. К сожалению😬, поскольку здесь контекст работает с UseEffect, если пользователь уже находится в приложении или на странице уведомлений или сообщений, новый значок не появится, если он не будет каким-либо образом обновлен, но на данный момент Course Assist нужно будет просто запустить вот так тогда возможно, позже я добавлю функцию, чтобы значок обновлялся автоматически, несмотря на то, что он уже есть в приложении.

Улучшения пользовательского интерфейса

Затем я работал над некоторыми улучшениями в пользовательском интерфейсе, ничего сложного, просто кое-что, чтобы приложение выглядело лучше, в том числе:

  • Улучшить внешний вид отзывов в профиле эксперта. По сути, это просто список отзывов и оценок, которые эксперт получил от людей, которым он помог.
  • Организация списка запросов на странице запросов экспертов: для этого я просто упорядочил список запросов, сделанных экспертом, в порядке убывания времени.
  • Добавлены заполнители для изображений профиля:Вы знаете того безликого мужчину, которого видите перед тем, как добавить изображение на Facebook? Да тот парень😂. Я добавил заполнитель, подобный тому, который вы увидите, если у вас нет изображения профиля. Я только что скачал случайную картинку из интернета, так что, надеюсь, она не укусит меня за шею позже 🙂.
  • Улучшенный пользовательский интерфейс кнопок. И последнее, но не менее важное: я только что сделал пару кнопок красивыми, что я забыл сделать раньше.

Что дальше?

С этим последним шагом я могу теперь с радостью сказать, что Course Assist — это завершенный проект, но под полным я не подразумеваю завершение на сто процентов, если вы инженер-программист, как я, вы знаете, что проект никогда не бывает стопроцентным. завершено😅, вам просто нужно довести его до точки, когда он сможет делать то, для чего он был создан, без особых проблем, и именно здесь сейчас находится Course Assist. При этом я также рад объявить о создании новой серии блогов, которую я начну, под названием Running Course Assist🥳. Я решил создать это, потому что большинство задач в будущем будут сосредоточены на повседневном использовании Course Assist, а не на создании, хотя я все еще буду обновлять серию создания Course Assist, когда добавлю в приложение некоторые существенные изменения. Первый блог Running Course Assist должен выйти на следующей неделе, начиная с получения логотипа и создания социальных сетей для Course Assist🙌🏾 . Кроме того, в следующем месяце или около того я начну новый проект, который будет означать серию новых зданий, все это и многое другое в будущем, поэтому вам нужно следить за обновлениями блога, чтобы не пропустить вещь. Вы также можете следить за мной в моих социальных сетях по этой ссылке, чтобы вы знали о моих блогах, как только я опубликую их. Спасибо за прочтение и до встречи в следующем🙏.