Code Programming Tutorials, Guides & Best Practices
Explore 184+ expertly crafted code tutorials, components, and code examples. Stay productive and build faster with proven implementation strategies and design patterns from DeveloperBreeze.
Adblocker Detected
It looks like you're using an adblocker. Our website relies on ads to keep running. Please consider disabling your adblocker to support us and access the content.
Code
nodejs graphql
GraphQL API Server with Node.js and Apollo Server
const express = require('express');
const { ApolloServer, gql } = require('apollo-server-express');
// Sample data
let books = [
{ title: 'The Great Gatsby', author: 'F. Scott Fitzgerald' },
{ title: 'To Kill a Mockingbird', author: 'Harper Lee' },
];
// GraphQL schema definition
const typeDefs = gql`
type Book {
title: String!
author: String!
}
type Query {
books: [Book]
}
type Mutation {
addBook(title: String!, author: String!): Book
}
`;
// GraphQL resolvers
const resolvers = {
Query: {
books: () => books,
},
Mutation: {
addBook: (_, { title, author }) => {
const newBook = { title, author };
books.push(newBook);
return newBook;
},
},
};
// Create Apollo server
const server = new ApolloServer({ typeDefs, resolvers });
const app = express();
server.applyMiddleware({ app });
app.listen({ port: 4000 }, () =>
console.log(` Server ready at http://localhost:4000${server.graphqlPath}`)
);- Schema Definition: The
typeDefsdefines a simple schema with aBooktype and queries to fetch books and add a new book. - Resolvers: Functions that resolve the queries and mutations. In this case, they return all books and add a new book to the list.
Aug 12, 2024
Read More Code
javascript
React Custom Hook for API Requests
import { useState, useEffect } from 'react';
function useFetch(url, options = {}) {
const [data, setData] = useState(null);
const [loading, setLoading] = useState(true);
const [error, setError] = useState(null);
useEffect(() => {
let isMounted = true; // Track if component is mounted
const fetchData = async () => {
setLoading(true);
try {
const response = await fetch(url, options);
if (!response.ok) {
throw new Error('Network response was not ok');
}
const result = await response.json();
if (isMounted) {
setData(result);
}
} catch (error) {
if (isMounted) {
setError(error);
}
} finally {
if (isMounted) {
setLoading(false);
}
}
};
fetchData();
return () => {
isMounted = false; // Cleanup to avoid setting state on unmounted component
};
}, [url, options]);
return { data, loading, error };
}
export default useFetch;Here’s an example of how to use the useFetch hook in a React component to fetch and display data.
Aug 12, 2024
Read More