نحوه تأیید اعتبار آدرس کشتی در ایالات متحده با استفاده از ReactJS

برای تأیید اعتبار یک آدرس حمل و نقل در ایالات متحده با استفاده از React و Google Maps Geocoding API، این مراحل را دنبال کنید:
برای یک کلید Google Maps API ثبت نام کنید:
را نصب کنید @googlemaps/google-maps-services-js
بسته:
yarn add @googlemaps/google-maps-services-js
یک مؤلفه React جدید برای فرم اعتبارسنجی آدرس خود ایجاد کنید:
// AddressValidationForm.js
import React, { useState } from 'react';
import { Client } from '@googlemaps/google-maps-services-js';
const AddressValidationForm = () => {
const [address, setAddress] = useState('');
const [validationMessage, setValidationMessage] = useState('');
const validateAddress = async () => {
const client = new Client();
try {
const response = await client.geocode({
params: {
address: address,
components: 'country:US',
key: 'YOUR_API_KEY',
},
});
if (response.data.status === 'OK') {
const formattedAddress = response.data.results[0].formatted_address;
setValidationMessage(`Valid address: ${formattedAddress}`);
} else {
setValidationMessage('Invalid address');
}
} catch (error) {
console.error(error);
setValidationMessage('Error occurred while validating the address');
}
};
return (
<div>
<input
type="text"
placeholder="Enter address"
value={address}
onChange={(e) => setAddress(e.target.value)}
/>
<button onClick={validateAddress}>Validate Address</button>
<p>{validationMessage}</p>
</div>
);
};
export default AddressValidationForm;
کلید API را که از Google Cloud Platform دریافت کردهاید، جایگزین «YOUR_API_KEY» کنید.
کامپوننت AddressValidationForm را در جزء اصلی React خود وارد کنید و آن را در JSX خود قرار دهید:
import React from 'react';
import AddressValidationForm from './AddressValidationForm';
const App = () => {
return (
<div>
<h1>Address Validation</h1>
<AddressValidationForm />
</div>
);
};
export default App;
اکنون، برنامه React شما دارای یک فرم ساده است که آدرس حمل و نقل در ایالات متحده را با استفاده از Google Maps Geocoding API تأیید می کند.
اگر می خواهید از React + React Hook Form + Zod استفاده کنید:
بسته های مورد نیاز را نصب کنید:
yarn add zod react-hook-form
یک طرح جدید Zod برای اعتبار سنجی آدرس ایجاد کنید:
// validation.js
import { z } from 'zod';
const AddressValidationSchema = z.object({
street: z.string().nonempty('Street is required'),
city: z.string().nonempty('City is required'),
state: z.string().nonempty('State is required'),
zip: z
.string()
.nonempty('Zip code is required')
.regex(/^\d{5}(-\d{4})?$/, 'Zip code is invalid'),
});
export default AddressValidationSchema;
یک مؤلفه React جدید برای فرم اعتبارسنجی آدرس خود ایجاد کنید:
// AddressValidationForm.js
import React from 'react';
import { useForm } from 'react-hook-form';
import { zodResolver } from '@hookform/resolvers/zod';
import AddressValidationSchema from './validation';
const AddressValidationForm = () => {
const {
register,
handleSubmit,
formState: { errors },
} = useForm({
resolver: zodResolver(AddressValidationSchema),
});
const onSubmit = (data) => {
// Perform address validation or submit data
console.log(data);
};
return (
<form onSubmit={handleSubmit(onSubmit)}>
<div>
<label htmlFor="street">Street:</label>
<input id="street" type="text" {...register('street')} />
{errors.street && <p>{errors.street.message}</p>}
</div>
<div>
<label htmlFor="city">City:</label>
<input id="city" type="text" {...register('city')} />
{errors.city && <p>{errors.city.message}</p>}
</div>
<div>
<label htmlFor="state">State:</label>
<input id="state" type="text" {...register('state')} />
{errors.state && <p>{errors.state.message}</p>}
</div>
<div>
<label htmlFor="zip">Zip:</label>
<input id="zip" type="text" {...register('zip')} />
{errors.zip && <p>{errors.zip.message}</p>}
</div>
<button type="submit">Validate Address</button>
</form>
);
};
export default AddressValidationForm;
کامپوننت AddressValidationForm را در جزء اصلی React خود وارد کنید و آن را در JSX خود قرار دهید:
import React from 'react';
import AddressValidationForm from './AddressValidationForm';
const App = () => {
return (
<div>
<h1>Address Validation</h1>
<AddressValidationForm />
</div>
);
};
export default App;
اکنون، برنامه React شما دارای فرمی است که ورودی کاربر را برای آدرس حمل و نقل با استفاده از طرح Zod و react-hook-form تأیید می کند.
به خاطر داشته باشید که استفاده از Google Maps API ممکن است بسته به استفاده شما هزینه هایی را به همراه داشته باشد. همچنین API های دیگری نیز وجود دارد که می توانید از آنها برای اعتبارسنجی آدرس های حمل و نقل استفاده کنید، مانند USPS Web Tools API، SmartyStreets یا EasyPost. مطمئن شوید که اسناد مربوطه و قیمت آنها را بررسی کنید تا بهترین مناسب برای نیازهای خود را پیدا کنید.
به GDPL هم فکر کنید 😉
مقاله تولید شده توسط ChatGPT (OpenAI) توسط من بررسی شده است 😉