Что ж, небольшие модули npm должны быть объявлены устаревшими или станут бесполезными.
Под капотом
Эта история снова является еще одним предсказанием в прошлой истории, я говорил о кросс-языке программирования, который может быть потенциальным языком для работы в браузере на устройствах IOS и Android, что также было предсказанием.
Я делаю прогнозы или выкладываю какие-то новые идеи или, может быть, даю новые идеи.
Кого волнует, что важно, что история должна и должна продолжаться.
Chat GPT в качестве модуля npm или заменит
Итак, начнем, я использую Chat GPT в большинстве своих разработок.
Я разрабатываю приложение, ориентированное на реакцию, и хочу добавить скелет загрузки при извлечении данных.
Теперь у меня есть 2 варианта
- Используйте пакет npm или сторонний компонент
- Разрабатываем самостоятельно
Раньше, до чата GPT, разработка любого небольшого модуля была трудоемким процессом.
Теперь у нас есть чат GPT, поэтому я могу напрямую попросить его дать мне кодовую базу для создания скелета в react-native.
Базовый код готов, как показано ниже.
import React, { useEffect, useState } from 'react'; import { StyleSheet, View } from 'react-native'; const SkeletonLoadingComponent = () => { const [isLoading, setIsLoading] = useState(true); useEffect(() => { const timer = setTimeout(() => { setIsLoading(false); }, 1000); return () => clearTimeout(timer); }, []); return ( <View style={styles.container}> {isLoading && <View style={styles.loadingIndicator} />} </View> ); }; const styles = StyleSheet.create({ container: { width: '100%', height: 20, backgroundColor: '#f2f2f2', borderRadius: 4, }, loadingIndicator: { flex: 1, backgroundColor: '#e6e6e6', borderRadius: 4, }, }); export default SkeletonLoadingComponent;
Это легко, далее нам нужно настроить его под свои нужды, например таймаут, цвета и оттенки.
Теперь мне не нужно
- Сторонний модуль,
- есть мой пользовательский компонент
- очень настраиваемый в соответствии с моим дизайном
- менее трудоемкий процесс
Таким образом, используя Chat GPT, я могу легко заменить эти небольшие модули npm.
Почему маленький? Я оставляю вам подумать над ответом, не стесняйтесь упоминать его в разделе комментариев.
Как только это будет сделано, мой скелет загрузки готов к использованию.
Настройка
я не остановилась на этом
Прошу в чат GPT добавить над ним анимацию пульса.
Вот код
const SkeletonLoadingComponent = () => { const pulseScale = useSharedValue(1); const startPulseAnimation = () => { pulseScale.value = withTiming( 1.2, { duration: 1000, easing: Easing.inOut(Easing.ease), }, () => { pulseScale.value = withTiming( 1, { duration: 1000, easing: Easing.inOut(Easing.ease), }, startPulseAnimation ); } ); }; React.useEffect(() => { startPulseAnimation(); }, []); const pulseStyle = { transform: [{ scale: pulseScale.value }], }; return ( <View style={styles.container}> <Animated.View style={[styles.loadingIndicator, pulseStyle]} /> </View> ); };
Я прошу Chat GPT для пульсирующей анимации, и, как и ожидалось, ниже приведен код
import React, { useEffect, useRef } from 'react'; import { StyleSheet, View } from 'react-native'; import Pulse from 'react-native-pulse'; import Ripple from 'react-native-ripple'; const SkeletonLoadingComponent = () => { const pulseRef = useRef(null); useEffect(() => { startPulseAnimation(); }, []); const startPulseAnimation = () => { pulseRef.current && pulseRef.current.start(); }; return ( <Ripple style={styles.container} rippleDuration={500} rippleCentered={true}> <View style={styles.loadingIndicator}> <Pulse ref={pulseRef} color="#e6e6e6" numPulses={3} diameter={200} initialDiameter={100} duration={2000} interval={1000} /> </View> </Ripple> ); };
Пользовательские модули?
- Я уменьшил размер репозитория
- Иметь компоненты, изготовленные по индивидуальному заказу
- Чем меньше размер пакета, тем производительнее будет приложение.
- Изготовленные на заказ компоненты настраиваются
- Используйте сборник рассказов для предварительного просмотра компонентов
- Вы можете выпускать свои собственные компоненты в виде модуля npm.
Это безумие: с помощью ИИ мы можем решить массу проблем, нам не нужно запоминать маленькие свойства и классы и больше сосредотачиваться на всей системе.
Это как быть разработчиком, я также являюсь основателем репозитория кода, который я разрабатываю, создаю или над которым работаю.
Я могу уделить внимание архитектуре и завершению экранов пользовательского интерфейса и логике приложения.
Это выглядит многообещающе, и если у нас будет расширение VS-Code, это будет полезный инструмент.
Заключение
Используйте Chat GPT для создания пользовательских компонентов и максимально возможной замены небольших модулей npm.
Мы даже можем попробовать удалить пакеты npm большого размера, чтобы уменьшить размер репозитория или приложения.
Chat GPT сыграет решающую роль в экономии времени и предоставлении точных решений за один раз.
Это все на сегодня.
Продолжайте развивать
Shrey
iHateReading
Дополнительные материалы на PlainEnglish.io.
Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter, LinkedIn, YouTube и Discord .