Skip to content

Instantly share code, notes, and snippets.

View davidtran's full-sized avatar
:electron:
🌟ReactJS 🌟

David Tran davidtran

:electron:
🌟ReactJS 🌟
  • Vietnam
View GitHub Profile
@davidtran
davidtran / Arrow.tsx
Created June 21, 2024 10:08
Draw an arrow in React Native to connect 2 elements
import React from 'react';
import { View, StyleSheet, LayoutRectangle } from 'react-native';
import Svg, { Line, Polygon } from 'react-native-svg';
interface ArrowProps {
start: LayoutRectangle;
end: LayoutRectangle;
}
const Arrow: React.FC<ArrowProps> = ({ start, end }) => {
@davidtran
davidtran / useRequest.js
Created July 6, 2020 04:40
Simplifify pending, error from a ajax request
import React, { useState } from 'react';
const useRequest = ({ request }) => {
const [result, setResult] = useState(null);
const [error, setError] = useState(null);
const [isRunning, setIsRunning] = useState(false);
async function execute(args) {
setIsRunning(true);
try {
// Webpack configuration
const TerserPlugin = require('terser-webpack-plugin');
const webpack = require('webpack');
const path = require('path');
const isProduction = process.env.NODE_ENV === 'production';
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const Visualizer = require('webpack-visualizer-plugin');
module.exports = {
mode: isProduction ? 'production' : 'development',