Что ж, небольшие модули 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 .