Skip to content

Instantly share code, notes, and snippets.

View harrylowkey's full-sized avatar
🏠
Working from home

Harry Dang harrylowkey

🏠
Working from home
View GitHub Profile
@harrylowkey
harrylowkey / Dockerfile
Last active July 3, 2023 03:00
Dockerfile for Web
FROM node:18-alpine AS Build
WORKDIR /user/src/app
COPY ./ ./client
RUN cd client && npm install && npm run build --prod
FROM nginx:latest AS Production
COPY --from=Build /user/src/app/client/dist/client /user/share/nginx/html
COPY nginx.conf /etc/nginx/conf.d/default.conf
EXPOSE 3000
@harrylowkey
harrylowkey / Dockerfile
Last active July 3, 2023 03:01
Dockerfile for Nodejs server
FROM node:18-alpine As development
RUN apk update && apk add --no-cache bash git openssh
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
ADD . .
RUN npm run build
FROM node:18-alpine as production
WORKDIR /usr/src/app

Destructuring trong Javascript (Phần 1)

Destructuring là 1 kỹ thuật được giới thuật trong ES6, giúp cho việc sao chép, trích xuất lại các variable 1 cách rất rõ ràng, dễ hiểu hơn rất nhiều so với những cách thông thường khác và chắc chắn là code line cũng giảm đi đáng kể.

Destructuring là gì? Tôi hiểu như này, destructuring là cấu trúc và khi ta thêm tiền tố de vào trước thành destructuring nghĩa sẽ chuyển thành phá hủy cấu trúc, tôi luôn cố gắng hiểu các thuật ngữ tiếng anh 1 cách thuần túy, bám sát với nghĩa gốc tiếng anh của chúng như thế. Những cách đặt tên những thuật ngữ trong lập trình cũng chính là dựa vào chức năng, nhiệm vụ của nó mà ta đặt tên thôi.

Giống như hàm filter(tạm dịch: lọc) của Array - nhiệm vụ của nó đơn giản là lặp qua lần lượt các element của mảng và lọc những element nào thỏa điều kiện. Hay khái niệm inheritance (nghĩa: thừa kế) trong OOP, vì đơn giản là nó có thể dùng lại những variable hay method của parent chúng, như ta thoải mái tiêu tiền của cha mẹ ta