Skip to content

Instantly share code, notes, and snippets.

View ermineaweb's full-sized avatar

Romain ermineaweb

View GitHub Profile
@ermineaweb
ermineaweb / server.js
Created December 16, 2020 20:04
Add some big lag
app.use((req, res, next) => {
setTimeout(() => next(), 1500);
});
@ermineaweb
ermineaweb / UsersWithData.js
Created December 16, 2020 20:07
UsersWithData
const queryRequest = gql`
query {
users {
id
username
}
}
`;
function UsersWithData() {
@ermineaweb
ermineaweb / Users.js
Created December 16, 2020 20:09
Users
function Users({ users }) {
const [username, setUsername] = useState("");
const changeUsername = (e) => {
setUsername(e.target.value);
};
return (
<main>
<div>
@ermineaweb
ermineaweb / Users.js
Created December 16, 2020 20:11
Users
const mutationRequest = gql`
mutation($username: String!) {
createUser(username: $username) {
id
username
}
}
`;
function Users({ users }) {
@ermineaweb
ermineaweb / User.js
Created December 16, 2020 20:12
User
const handleCreateUser = () => {
createUser({
variables: { username },
optimisticResponse: {
__typename: "Mutation",
// use the uuid library to have a unique ID
createUser: { __typename: "User", id: 123456, username },
},
/* General Scrollbar style */
::-webkit-scrollbar {
/*vertical scroll bar*/
width: 8px;
/*horizontal scroll bar*/
height: 8px;
border-radius: 20px;
}
::-webkit-scrollbar-track,
@ermineaweb
ermineaweb / User.js
Created January 15, 2021 20:01
user
{usersState.map((user) => {
return (
<div key={user.id} className={`user`}>
<div>{user.username}</div>
</div>
);
})}
function Users({ users }) {
return (
<div className={"root"}>
<div className={"users"}>
{usersState.map((user) => {
return (
<div key={user.id} className={`user`}>
<div>{user.username}</div>
</div>
);
function App() {
return <Users users={users} />;
}
function useBookmarks() {
const [bookmarks, setBookmarks] = useState(() => {
const ls = localStorage.getItem("bookmarks");
if (ls) return JSON.parse(ls);
else return [];
});
const toggleItemInLocalStorage = (id) => () => {
const isBookmarked = bookmarks.includes(id);
if (isBookmarked) setBookmarks((prev) => prev.filter((b) => b !== id));