Skip to main content

10 posts tagged with "nodejs"

View All Tags

· 3 min read
Phạm Quyết Thắng
Fullstack developer

Ways to Fix Errors in node_modules and Preserve Edits (Using patch-package, ...)

1. When Fixing a Library from npm:

For JavaScript enthusiasts, installing third-party libraries using the command npm install <package name> (or yarn) is a familiar routine.

After installation, these libraries reside in the node_modules directory, and we can easily use them.

What's inside the node_module is usually not something we need to know in detail. The node_module can sometimes be an untouchable area.

Deleting the node_module and reinstalling is a spiritual solution many have used in desperation to fix bugs.

Issues arise when we encounter a problem with a library but don't want to find an alternative.

· 6 min read
Phạm Quyết Thắng
Fullstack developer


In the process of developing web applications or blogs, providing a rich text editor for users is a common requirement. This allows users to create, edit, and format their content flexibly and easily. One popular text editor in the programming community is React Quill, known for its high customization and easy integration into your React projects.

However, allowing users to upload and insert images or videos into the text editor is not a simple task. Especially when you need to store and manage thousands of multimedia files. The solution is to use a powerful cloud image storage service like Cloudinary. Cloudinary allows you to store, upload, and manage images and videos efficiently, enhancing the functionality and performance of your application.

In this article, we will learn how to integrate React Quill with the Cloudinary image storage service to address this complex issue. Together, we will build an editor that enables users to conveniently and quickly upload and insert images and videos.

  • React Quill: An open-source text editor that allows users to create and edit content with various formats.
  • Cloudinary: A powerful cloud storage service that supports easy management, uploading, and processing of images and videos.

· 3 min read
Phạm Quyết Thắng
Fullstack developer

Swagger is a powerful tool for creating and managing API documentation. However, securing Swagger documents is crucial to ensure that sensitive information is not exposed. In this article, we will explore how to use the express-basic-auth library to protect Swagger documentation pages in JavaScript and TypeScript projects. We will focus on two cases: a regular JavaScript/TypeScript project and a NestJS project with @nestjs/swagger.

After implementation, a user/password input form will appear when accessing the document page, and the correct credentials must be entered to view the document:

Basic auth

· 2 min read
Ngô Gia Phong
Javascript developer

Bất đồng bộ là gì?

"Bất đồng bộ" là một thuật ngữ thường được sử dụng trong lĩnh vực công nghệ thông tin để chỉ các quá trình, tác vụ, hoặc hệ thống không hoạt động đồng bộ với nhau. Điều này có thể ám chỉ đến các quá trình chạy không cùng một tốc độ, không hoàn thành vào cùng một thời điểm, hoặc không tuân theo một lịch trình chung.

JavaScript có phải là bất đồng bộ?

  • Người ta thường nói JavaScript là ngôn ngữ bất đồng bộ, nhưng thực tế không hẳn như vậy.
  • JS luôn đồng bộ & blocking

Đúng là JS có những cơ chế hỗ trợ lập trình bất đồng bộ (callback, promise, async/await), nhưng bản thân JS runtime hoàn toàn không phải. Bạn không thể nào viết một hàm với callback, promise hay async/await và hi vọng nó hoạt động asynchronous và non-blocking.

Code JS là đơn luồng và hoàn toàn đồng bộ. Chỉ có những tác vụ sử dụng WebAPIs (do browser) như AJAX, timeout,... thì JS mới thực thi chúng dạng bất đồng bộ. (hoặc một số API như AJAX của jquery cho phép cả hai chế độ).

Làm sao để sử lý bất đồng bộ trong JavaScript ?

Có 3 cách "thường dùng" để xử lý bất bồng bộ:

  • Cách 1: Sử dụng Callback
  • Cách 2: Sử dụng Promie
  • Cách 3: Sử dụng Async/ Await