Close Menu
TechTimes VietnamTechTimes Vietnam
  • Tin tức
    • Máy tính
    • Di động
    • Khoa học
    • Ứng dụng
    • Bảo mật
    • Điện tử tiêu dùng
    • Ô tô – Xe máy
    • Doanh nghiệp
      • PR Newswire
      • Media Outreach
      • GlobeNewswire
  • Đánh giá
  • Đời sống số
  • Thủ thuật
    • Bảo mật
    • Di động
    • Ứng dụng
    • Máy tính
    • Điện tử tiêu dùng
    • Máy ảnh
  • Khoa học

Đăng ký bản tin

Cập nhật thông tin, đánh giá, bình luận... trong hộp thư email.

Facebook X (Twitter) Instagram YouTube LinkedIn TikTok RSS
Facebook X (Twitter) TikTok LinkedIn RSS
TechTimes VietnamTechTimes Vietnam
  • Tin tức
    1. Máy tính
    2. Di động
    3. Khoa học
    4. Ứng dụng
    5. Bảo mật
    6. Điện tử tiêu dùng
    7. Ô tô – Xe máy
    8. Doanh nghiệp
    9. PR Newswire
    10. Media Outreach
    11. GlobeNewswire
    12. Xem tất cả

    Acer triển khai chương trình Back To School 2026

    08/07/2026

    LG ra mắt dòng laptop LG gram AI 2026 tại Việt Nam, mỏng nhẹ hơn và tích hợp AI toàn diện

    03/07/2026

    ASUS ra mắt ExpertBook Ultra tại Việt Nam, laptop Copilot+ PC cao cấp hướng đến doanh nghiệp

    26/06/2026

    COLORFUL ra mắt iGame B850I MINI OC V14: Bo mạch chủ Mini-ITX cho hệ thống AMD Ryzen cao cấp

    25/06/2026

    Rakuten Viber bắt tay Vietnamobile, mang Viber Plus và Viber Dating đến người dùng Việt

    16/07/2026

    Rò rỉ: Chuỗi cung ứng Apple đã sẵn sàng cho thiết kế kính hoàn toàn mới của iPhone 20

    15/07/2026

    iOS 27 Public Beta chính thức được phát hành: 10 tính năng mới được nâng cấp đáng để trải nghiệm

    14/07/2026

    Zalo bổ sung tính năng trí tuệ nhân tạo AI mới, mở rộng dịch thuật và tăng cường đồng bộ dữ liệu

    13/07/2026

    Xiaomi mở mã nguồn mô hình AI Robotics-U0, tăng tốc tạo dữ liệu huấn luyện robot lên hơn 80 lần

    17/07/2026

    Phát hiện thiên hà ‘ẩn mình’ có thể là nguồn phát neutrino năng lượng cao, hé lộ mới về hố đen siêu lớn

    21/06/2026

    Nghiên cứu mới từ Virginia Tech phát hiện tế bào ung thư kích thước nhỏ hơn có thể nguy hiểm hơn

    26/05/2026

    Hoạt động khám phá không gian đang thúc đẩy công nghệ và đổi mới khoa học như thế nào?

    19/05/2026

    Rakuten Viber bắt tay Vietnamobile, mang Viber Plus và Viber Dating đến người dùng Việt

    16/07/2026

    Apple điều chỉnh giá AppleCare+ cho Mac và iPad mới, tăng nhẹ phí đăng ký

    16/07/2026

    Google: Người dùng Gemini tại Đông Nam Á tăng gấp đôi, Việt Nam dẫn đầu về sử dụng AI trong học tập

    14/07/2026

    iOS 27 Public Beta chính thức được phát hành: 10 tính năng mới được nâng cấp đáng để trải nghiệm

    14/07/2026

    Kaspersky: Tấn công giả mạo công cụ AI nhắm vào doanh nghiệp nhỏ tăng mạnh trong năm 2026

    02/07/2026

    Kaspersky: Phụ huynh càng thường xuyên đăng ảnh con lên mạng xã hội càng ít chú trọng đến bảo vệ quyền riêng tư

    05/06/2026

    COMPUTEX 2026: Khám phá loạt giải pháp dữ liệu, AI và điện toán riêng tư mới của Synology

    03/06/2026

    Những rủi ro tiềm ẩn khó lường khi doanh nghiệp sử dụng phần mềm lậu, không có bản quyền

    01/06/2026

    Samsung ra mắt giải pháp giặt sấy công nghiệp tại Việt Nam, hướng đến doanh nghiệp thương mại

    17/07/2026

    LG cùng WW Việt Nam ra mắt Bee Laundry, mô hình cửa hàng giặt sấy thông minh tại Hà Nội

    09/07/2026

    ShinFlow ra mắt thương hiệu tại Đông Nam Á, giới thiệu điều hòa tích hợp trí tuệ nhân tạo AI thế hệ mới

    06/07/2026

    Panasonic ra mắt tủ lạnh 4 cánh âm tường 2026, nâng cấp thiết kế và công nghệ bảo quản thực phẩm

    30/06/2026

    VinFast hợp tác TÜV Rheinland nâng cao năng lực thử nghiệm ô tô theo chuẩn quốc tế

    17/07/2026

    S&S Automotive triển khai dịch vụ hậu mãi chính hãng Aston Martin tại thị trường Việt Nam

    13/07/2026

    YADEA ra mắt xe máy điện Omee, hợp tác Be Group thúc đẩy giao thông xanh tại Việt Nam

    26/06/2026

    YADEA triển khai chương trình đổi xe xăng lấy xe điện, ưu đãi đến hết tháng 7/2026

    23/06/2026

    COMPUTEX 2026 chính thức mở màn, chủ đề ‘AI Together’, quy tụ 1.500 doanh nghiệp công nghệ toàn cầu

    02/06/2026

    NIC Việt Nam góp mặt tại GITEX ASIA 2025 – Kết nối hệ sinh thái công nghệ châu Á

    17/04/2025

    VinBrain mở rộng hợp tác với Medlatec và Vikomed

    18/09/2024

    Công bố sự kiện xúc tiến giao thương MEGA US EXPO 2024

    11/07/2024

    Farizon khai trương Trung tâm Phân phối Phụ tùng Toàn cầu, tăng cường hỗ trợ hậu mãi quốc tế

    18/07/2026

    3TREES lập kỷ lục Guinness thế giới: Showroom sơn phủ lớn nhất — Khai trương Trung tâm Trải nghiệm Công nghệ Nhà ở Chất lượng 3TREES

    17/07/2026

    Huawei ra mắt Chiến lược tạo lưới mới nhất cho hệ thống điện tương lai tại The Smarter E 2026

    16/07/2026

    Tìm sự bình yên giữa bầu không khí cuồng nhiệt: Hisense mang đến trải nghiệm FIFA World Cup 2026™ hòa nhập hơn cho người hâm mộ tại cả 16 thành phố đăng cai

    16/07/2026

    FEV hợp tác với Microsoft để tích hợp các khả năng AI tạo sinh cho các ứng dụng trên ô tô

    09/07/2026

    SNP giới thiệu giải pháp AI Kyano Lorna để tăng tốc quá trình chuyển đổi dữ liệu doanh nghiệp

    09/07/2026

    SNP hợp tác chiến lược với Palantir để đẩy nhanh quá trình chuyển đổi SAP an toàn

    09/07/2026

    Từ năm 2021 đến nay, doanh thu định kỳ hàng năm của Keeper Security tăng hơn 3 lần

    09/07/2026

    NVIDIA mở rộng hệ sinh thái AI robot tại Nhật Bản, hơn 20 doanh nghiệp gia nhập Cosmos Coalition

    18/07/2026

    Farizon khai trương Trung tâm Phân phối Phụ tùng Toàn cầu, tăng cường hỗ trợ hậu mãi quốc tế

    18/07/2026

    Uplinq Named to Newsweek’s America’s Greatest Startup Workplaces 2026

    18/07/2026

    Uplinq Named to Newsweek’s America’s Greatest Startup Workplaces 2026

    17/07/2026

    NVIDIA mở rộng hệ sinh thái AI robot tại Nhật Bản, hơn 20 doanh nghiệp gia nhập Cosmos Coalition

    18/07/2026

    Samsung ra mắt giải pháp giặt sấy công nghiệp tại Việt Nam, hướng đến doanh nghiệp thương mại

    17/07/2026

    VinFast hợp tác TÜV Rheinland nâng cao năng lực thử nghiệm ô tô theo chuẩn quốc tế

    17/07/2026

    Microchip ra mắt thiết bị cấp nguồn PoE công nghiệp PD-9601GCI, hỗ trợ công suất tới 90W

    17/07/2026
  • Đánh giá

    Đánh giá Wacom MovinkPad Pro 14: Nâng tầm định nghĩa “Trạm sáng tạo di động chuyên nghiệp”

    17/07/2026

    Đánh giá OPPO Reno16 5G: AI và camera cùng giúp việc sáng tạo nội dung trở nên đơn giản hơn

    02/07/2026
    9.7

    Đánh giá Galaxy S26 Ultra sau hơn 3 tháng: AI thực sự hữu ích và quyền riêng tư trở thành nâng cấp đáng giá

    26/06/2026

    COMPUTEX 2026: Predator Helios 18 AI và Nitro 16 – Acer mang sức mạnh AI PC và gaming lên một tầm cao mới

    03/06/2026

    COMPUTEX 2026: Trải nghiệm nhanh Acer Swift Air 14 – mỏng nhẹ, thực dụng và đủ chinh phục số đông

    03/06/2026
  • Đời sống số

    NVIDIA mở rộng hệ sinh thái AI robot tại Nhật Bản, hơn 20 doanh nghiệp gia nhập Cosmos Coalition

    18/07/2026

    VinFast hợp tác TÜV Rheinland nâng cao năng lực thử nghiệm ô tô theo chuẩn quốc tế

    17/07/2026

    Microchip ra mắt thiết bị cấp nguồn PoE công nghiệp PD-9601GCI, hỗ trợ công suất tới 90W

    17/07/2026

    Đánh giá Wacom MovinkPad Pro 14: Nâng tầm định nghĩa “Trạm sáng tạo di động chuyên nghiệp”

    17/07/2026

    Xiaomi mở mã nguồn mô hình AI Robotics-U0, tăng tốc tạo dữ liệu huấn luyện robot lên hơn 80 lần

    17/07/2026
  • Thủ thuật
    1. Bảo mật
    2. Di động
    3. Ứng dụng
    4. Máy tính
    5. Điện tử tiêu dùng
    6. Máy ảnh
    7. Xem tất cả

    Kaspersky: Tấn công giả mạo công cụ AI nhắm vào doanh nghiệp nhỏ tăng mạnh trong năm 2026

    02/07/2026

    Kaspersky: Phụ huynh càng thường xuyên đăng ảnh con lên mạng xã hội càng ít chú trọng đến bảo vệ quyền riêng tư

    05/06/2026

    COMPUTEX 2026: Khám phá loạt giải pháp dữ liệu, AI và điện toán riêng tư mới của Synology

    03/06/2026

    Những rủi ro tiềm ẩn khó lường khi doanh nghiệp sử dụng phần mềm lậu, không có bản quyền

    01/06/2026

    Rakuten Viber bắt tay Vietnamobile, mang Viber Plus và Viber Dating đến người dùng Việt

    16/07/2026

    Rò rỉ: Chuỗi cung ứng Apple đã sẵn sàng cho thiết kế kính hoàn toàn mới của iPhone 20

    15/07/2026

    iOS 27 Public Beta chính thức được phát hành: 10 tính năng mới được nâng cấp đáng để trải nghiệm

    14/07/2026

    Zalo bổ sung tính năng trí tuệ nhân tạo AI mới, mở rộng dịch thuật và tăng cường đồng bộ dữ liệu

    13/07/2026

    Rakuten Viber bắt tay Vietnamobile, mang Viber Plus và Viber Dating đến người dùng Việt

    16/07/2026

    Apple điều chỉnh giá AppleCare+ cho Mac và iPad mới, tăng nhẹ phí đăng ký

    16/07/2026

    Google: Người dùng Gemini tại Đông Nam Á tăng gấp đôi, Việt Nam dẫn đầu về sử dụng AI trong học tập

    14/07/2026

    iOS 27 Public Beta chính thức được phát hành: 10 tính năng mới được nâng cấp đáng để trải nghiệm

    14/07/2026

    Acer triển khai chương trình Back To School 2026

    08/07/2026

    LG ra mắt dòng laptop LG gram AI 2026 tại Việt Nam, mỏng nhẹ hơn và tích hợp AI toàn diện

    03/07/2026

    ASUS ra mắt ExpertBook Ultra tại Việt Nam, laptop Copilot+ PC cao cấp hướng đến doanh nghiệp

    26/06/2026

    COLORFUL ra mắt iGame B850I MINI OC V14: Bo mạch chủ Mini-ITX cho hệ thống AMD Ryzen cao cấp

    25/06/2026

    Samsung ra mắt giải pháp giặt sấy công nghiệp tại Việt Nam, hướng đến doanh nghiệp thương mại

    17/07/2026

    LG cùng WW Việt Nam ra mắt Bee Laundry, mô hình cửa hàng giặt sấy thông minh tại Hà Nội

    09/07/2026

    ShinFlow ra mắt thương hiệu tại Đông Nam Á, giới thiệu điều hòa tích hợp trí tuệ nhân tạo AI thế hệ mới

    06/07/2026

    Panasonic ra mắt tủ lạnh 4 cánh âm tường 2026, nâng cấp thiết kế và công nghệ bảo quản thực phẩm

    30/06/2026

    Sony RX10 V ra mắt: Camera zoom siêu xa nhưng mức giá lên đến 2.300 USD gây nhiều tranh cãi

    10/07/2026

    Sony ALPHA 7R VI có giá 114 triệu đồng: Máy ảnh full-frame 67MP kết hợp tốc độ và độ phân giải vượt trội

    15/05/2026

    Canon ra mắt EOS R6 V giá 56,99 triệu đồng và ống kính Power Zoom RF20-50mm F4 L IS USM PZ tại Việt Nam

    14/05/2026

    Sony giới thiệu Alpha 7 V: Định nghĩa lại chuẩn máy ảnh Hybrid Full-frame với sức mạnh AI thế hệ mới

    09/12/2025

    7 mẹo hay giúp người dùng Android sáng tạo nội dung nhanh hơn với ‘siêu phẩm’ OPPO Reno16 5G

    13/07/2026

    Những lưu ý khi mua TV xem World Cup 2026: Đừng để những cái tên công nghệ làm bạn ‘việt vị’

    14/06/2026

    Corsair iCUE LINK 3500X RGB & NAUTILUS 360 RS ARGB White: Combo build PC trắng đẹp, mát và dễ chơi

    30/05/2026

    Samsung mở Quick Share kết nối iPhone trên dòng Galaxy S26, phá vỡ rào cản chia sẻ file

    23/03/2026
  • Khoa học
TechTimes VietnamTechTimes Vietnam
Cách xây dựng trình tạo văn bản Lorem Ipsum bằng JavaScript và Vite

Cách xây dựng trình tạo văn bản Lorem Ipsum bằng JavaScript và Vite

24/07/2023Media Outreach Newswire9 phút để đọc

Lorem ipsum là văn bản mà các nhà phát triển và nhà thiết kế trên khắp thế giới sử dụng làm trình giữ chỗ. Nếu bạn tương tác với nhiều nguyên mẫu giao diện người dùng, có thể bạn đã bắt gặp nó trước đây.

HOT
⚡ Tin công nghệ nóng mỗi ngày tại TechWire.vn
Xem ngay →


Tìm hiểu cách xây dựng trình tạo Lorem ipsum linh hoạt với Vite và JavaScript và bạn sẽ linh hoạt các kỹ năng phát triển của mình với kết quả hữu ích.


Tại sao Lorem Ipsum lại được sử dụng rộng rãi như vậy?

Bạn có thể thắc mắc tại sao rất nhiều nhà phát triển và nhà thiết kế chọn lorem ipsum khi họ có thể chỉ cần sao chép một trang từ một cuốn sách miền công cộng hoặc tương tự. Lý do chính là nó cho phép người dùng hoặc người xem hiểu được hình thức trực quan của tài liệu hoặc nguyên mẫu mà không tập trung quá nhiều vào chính văn bản giữ chỗ.

Hãy tưởng tượng bạn đang thiết kế một tờ báo. Thay vì gặp rắc rối khi sao chép văn bản từ các nguồn khác nhau để làm cho thiết kế chân thực nhất có thể, bạn chỉ cần sao chép văn bản giữ chỗ lorem ipsum tiêu chuẩn và sử dụng văn bản đó thay thế.

Lorem ipsum được công nhận rộng rãi đến mức bạn thậm chí không cần chỉ định rằng đó là văn bản giữ chỗ—hầu như tất cả những ai bắt gặp nó sẽ ngay lập tức nhận ra rằng văn bản đó là văn bản bổ sung.

Thiết lập máy chủ dự án và phát triển

Mã được sử dụng trong dự án này có sẵn trong một kho lưu trữ GitHub và miễn phí cho bạn sử dụng theo giấy phép MIT. Sao chép nội dung của phong cách.css và lorem.js các tệp và dán chúng vào các bản sao cục bộ của các tệp này.

Nếu bạn muốn xem phiên bản trực tiếp của dự án này, bạn có thể xem cái này thử nghiệm.

Bạn sẽ sử dụng công cụ xây dựng Vite để thiết lập mọi thứ. Đảm bảo rằng bạn đã cài đặt Node.js và Trình quản lý gói nút (NPM) hoặc Sợi trên máy của mình, sau đó mở thiết bị đầu cuối của bạn và chạy:

 npm create vite 

Hoặc:

 yarn create vite

Điều này sẽ tạo ra một dự án Vite trống. Nhập tên dự án, đặt khung thành “Vanilla” và biến thể thành “Vanilla”. Sau khi làm điều đó, điều hướng đến thư mục dự án với đĩa CD lệnh, sau đó chạy:

 npm i 

Hoặc:

 yarn 

Sau khi cài đặt tất cả các phụ thuộc, hãy mở dự án trong trình soạn thảo văn bản bạn chọn, sau đó sửa đổi cấu trúc dự án để trông giống như sau:

Ảnh chụp màn hình của cấu trúc dự án

Bây giờ, xóa nội dung của index.html tập tin và thay thế nó bằng như sau:

 <!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/vite.svg" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Lorem Ipsum Generator</title>
  </head>
  <body>
    <h1>Lorem Ipsum Generator</h1>
    <div id="app">
      <div class="controls">
        <form>
          <div class="control">
            <label for="w-count">Words per paragraph</label>
            <div>
              <input type="range" id="w-count" min="10" max="100" value="25" step="10">
              <span id="w-count-label">25</span>
            </div>
          </div>
          <div class="control">
            <label for="p-count">Paragraph count</label>
            <div>
              <input type="range" id="p-count" min="1" max="20" step="1" value="3">
              <span id="p-count-label">3</span>
            </div>
          </div>
          <button type="submit">Generate</button>
        </form>
        <button class="copy">Copy to Clipboard</button>
        <div class="info">
          Use the sliders to set the parameters, then hit the "Generate" button.
          
          You can copy the text by hitting the "Copy to Clipboard" button
        </div>
      </div>
      <div class="output"></div>
    </div>
    <script type="module" src="/main.js"></script>
  </body>
</html>

Đánh dấu này chỉ đơn giản là xác định giao diện người dùng. Phía bên trái của màn hình hiển thị các điều khiển, trong khi phía bên phải hiển thị đầu ra. Tiếp theo, mở chính.js tệp, xóa nội dung của tệp và thêm một dòng để nhập phong cách.css:

 import './style.css'

Nhập tệp Lorem và xác định biến toàn cục

Mở kho lưu trữ GitHub của dự án này, sao chép nội dung của lorem.js tệp và dán chúng vào bản sao cục bộ của bạn lorem.js. lorem.js chỉ cần xuất một chuỗi văn bản Lorem Ipsum rất dài mà các tệp JavaScript khác có thể sử dụng.

bên trong chính.js tệp, nhập tệp truyền thuyết chuỗi từ lorem.js file và xác định các biến cần thiết:

 import { lorem } from './lorem';

let text = lorem.replace(/[.,/#!$%^&*;:{}=-_`~()]/g, "").split(' ');
let lastChar;
let wordCountControl = document.querySelector("#w-count");
let paragraphCountControl = document.querySelector("#p-count");
let wordCountLabel = document.querySelector("#w-count-label");
let paragraphCountLabel = document.querySelector("#p-count-label");
let wordCount = wordCountControl.value;
let paragraphCount = paragraphCountControl.value;
let copy = document.querySelector(".copy");

Mã này sử dụng một biểu thức chính quy để loại bỏ bất kỳ dấu chấm câu nào trong truyền thuyết chữ. Các chữ biến liên kết phiên bản sửa đổi này của truyền thuyết chữ. Điều này sẽ làm cho nó dễ dàng hơn để tạo ra các từ và đoạn văn.

Tạo chức năng máy phát điện

Đối với bất kỳ câu hoặc đoạn văn được tạo ngẫu nhiên nào có vẻ “thực”, cần phải có dấu chấm câu. Sau khi xác định các biến toàn cục, hãy tạo một hàm gọi là generateRandomPunctuation() và trong chức năng đó tạo ra một mảng gọi là nhân vật và cư nó.

 function generateRandomPunctuation() {
    let characters = [",", "!", ".", "?"];
    let character = characters[Math.floor(Math.random() * characters.length)];
    lastChar = character;
    return character;
}

Khối mã ở trên xác định một mảng, nhân vật, chứa các dấu chấm câu khác nhau. Nó định nghĩa một biến khác, tính cáchmà nó đặt thành một phần tử ngẫu nhiên từ nhân vật mảng. Biến toàn cầu, cuối cùngCharlưu trữ cùng một giá trị mà sau đó hàm trả về.

Tiếp theo, tạo một tạoParagraph() chức năng với một đếm tham số có giá trị mặc định là 100.

 function generateParagraph(count = 100) {
}

Trong chức năng này, khai báo một đoạn văn mảng và tìm nạp các từ ngẫu nhiên từ toàn cầu chữ mảng, sau đó đẩy nó vào đoạn văn.

 let paragraph = [];

for (let i = 1; i <= count; i++) {
    paragraph.push(text[Math.floor(Math.random() * text.length)].toLowerCase());
}

Tiếp theo, thêm mã để viết hoa chữ cái đầu tiên trong từ đầu tiên của mỗi đoạn:

 let fl=paragraph[0];
paragraph[0] = fl.replace(fl[0], fl[0].toUpperCase());

Mỗi đoạn kết thúc bằng dấu chấm câu (thường là dấu chấm), vì vậy hãy thêm mã thêm dấu chấm vào cuối mỗi đoạn.

 let lwPos = paragraph.length - 1;
let lWord = paragraph[lwPos];
paragraph[lwPos] = lWord.replace(lWord, lWord + ".");

Tiếp theo, triển khai chức năng thêm dấu chấm câu được tạo ngẫu nhiên vào thành phần ngẫu nhiên trong đoạn văn mảng.

 paragraph.forEach((word, index) => {
    if (index > 0 && index % 10 === 0) {
        let randomNum = Math.floor(Math.random() * 4);
        let pos = index + randomNum;
        let randWord = paragraph[pos];
        paragraph[pos] = randWord.replace(randWord, randWord + generateRandomPunctuation());
        let nWord=paragraph[pos + 1];

        if (lastChar !== ",") {
            paragraph[pos + 1] = nWord.replace(nWord[0], nWord[0].toUpperCase());
        }
    }
})

Khối mã này tạo ra một ký tự chấm câu ngẫu nhiên và nối nó vào cuối một phần tử ngẫu nhiên từ đoạn văn mảng. Sau khi nối thêm dấu câu, nó viết hoa chữ cái đầu tiên của thành phần tiếp theo nếu dấu câu không phải là dấu phẩy.

Cuối cùng, trả lại đoạn văn mảng được định dạng dưới dạng một chuỗi:

 return paragraph.join(" "); 

Văn bản lorem ipsum phải có ‘cấu trúc’ dựa trên số lượng đoạn văn mà người dùng chỉ định. Bạn có thể sử dụng một mảng để xác định ‘cấu trúc’ này. Ví dụ: nếu người dùng muốn một văn bản lorem ipsum có ba đoạn, thì mảng ‘cấu trúc’ sẽ có dạng như sau:

 structure = ["First paragraph.", "n n", "Second paragraph.", "n n", "Third paragraph"]

Trong khối mã ở trên, mỗi “n n” đại diện cho khoảng cách giữa mỗi đoạn. nếu bạn đăng nhập cấu trúc.join(“”) trong bảng điều khiển trình duyệt, bạn sẽ thấy như sau:

Ảnh chụp màn hình của cấu trúc

Tạo một hàm tự động tạo cấu trúc này và gọi hàm tạo raParagraph chức năng:

 function generateStructure(wordCount, paragraph = 1) {
    let structure = [];

    for (let i = 0; i < paragraph * 2; i++) {
        if (i % 2 === 0) structure[i] = generateParagraph(wordCount);
        else if (i < (paragraph * 2) - 1) structure[i] = "n n";
    }

    return structure.join("");
}

Thêm Trình lắng nghe sự kiện vào Điều khiển

Thêm trình xử lý sự kiện “đầu vào” vào wordCountControl phần tử đầu vào và trong chức năng gọi lại, đặt số từ đến giá trị đầu vào. Sau đó cập nhật nhãn.

 wordCountControl.addEventListener("input", (e) => {
    wordCount = e.target.value;
    wordCountLabel.textContent= e.target.value;
})

Tiếp theo, thêm trình xử lý sự kiện “đầu vào” vào kiểm soát đoạn văn phần tử đầu vào và trong hàm gọi lại, đặt đoạn văn vào giá trị đầu vào và cập nhật nhãn.

 paragraphCountControl.addEventListener("input", (e) => {
    paragraphCount= e.target.value;
    paragraphCountLabel.textContent = e.target.value;
})

Thêm trình xử lý sự kiện “nhấp chuột” vào sao chép nút gọi trở lại sao chép văn bản() khi sự kiện kích hoạt.

 copy.addEventListener("click", ()=>copyText());

Cuối cùng, thêm trình xử lý sự kiện “gửi” vào hình thức phần tử HTML và gọi cập nhật giao diện người dùng chức năng trong chức năng gọi lại.

 document.querySelector("form").addEventListener('submit', (e) => {
    e.preventDefault();
    updateUI();
})

Hoàn thiện và cập nhật giao diện người dùng

Tạo một chức năng getControlValues trả về số từ Và đoạn văn như một đối tượng.

 function getControlValues() {
    return { wordCount, paragraphCount };
}

Sau đó tạo cập nhậtUI() chức năng hiển thị văn bản được tạo trên màn hình cho người dùng:

 function updateUI() {
    let output = generateStructure(getControlValues().wordCount, getControlValues().paragraphCount)
    document.querySelector(".output").innerText = output;
}

Sắp xong. tạo sao chép văn bản() chức năng ghi văn bản vào khay nhớ tạm bất cứ khi nào người dùng nhấp vào nút “Sao chép vào khay nhớ tạm”.

 async function copyText() {
    let text = document.querySelector(".output").innerText;
    try {
      await navigator.clipboard.writeText(text);
      alert('Copied to clipboard');
    } catch (err) {
      alert('Failed to copy: ', err);
    }
  }

Sau đó gọi cập nhậtUI() chức năng:

 updateUI();

Chúc mừng! Bạn đã xây dựng trình tạo văn bản lorem ipsum bằng JavaScript và Vite.

Ảnh chụp màn hình của dự án đã hoàn thành

Tăng cường phát triển JavaScript của bạn với Vite

Vite là một công cụ giao diện người dùng phổ biến giúp dễ dàng thiết lập khung giao diện người dùng của bạn. Nó hỗ trợ nhiều khung khác nhau như React, Svelte, SolidJS và thậm chí cả JavaScript đơn giản. Nhiều nhà phát triển JavaScript sử dụng Vite vì nó rất dễ cài đặt và rất nhanh.

Nguồn: Tổng hợp – được thực hiện thử nghiệm bằng NLP và trí tuệ nhân tạo, vui lòng nhấn báo lỗi để góp ý

Theo dõi TechTimes trên Google News
Chia sẻ. Copy Link Facebook Twitter Pinterest LinkedIn Tumblr Email WhatsApp
Bài trướcCách cấp nguồn cho Raspberry Pi Pico
Bài tiếp theo Lỗi Tệp Quá Lớn” trong Linux

Bài viết liên quan

Apple Raises AppleCare+ Pricing for New Mac and iPad Subscriptions

[COMPUTEX 2026] GTC Taipei 2026: Jensen Huang Unveils NVIDIA’s Vision for the Agentic AI Era

iOS 27 Rumored to Bring Major Camera and Photos App Upgrades

Microsoft Finally Brings Movable Taskbar Back to Windows 11

Largest Brain-Scan Study Links Anxiety Disorders to Lower Choline Levels

NVIDIA Introduces Open “Ising” AI Models to Push Quantum Computing Toward Real-World Applications

TECHTIMES TECH TRENDS LIVE
AI • Quantum Computing • Semiconductor • Future Tech
    © TechTimes.vn | Xu hướng công nghệ
    • Facebook
    • Twitter
    • Instagram
    • YouTube
    • LinkedIn
    • TikTok
    Đánh giá mới
    9.7

    Đánh giá Galaxy S26 Ultra sau hơn 3 tháng: AI thực sự hữu ích và quyền riêng tư trở thành nâng cấp đáng giá

    26/06/2026
    9.5

    Đánh giá TCL QD-Mini LED A400M 65 inch: Màn hình lớn, thiết kế đẹp, chất lượng hiển thị vượt tầm giá

    20/06/2026
    9.0

    Corsair VANGUARD AIR 99 Wireless: Bàn phím gaming cao cấp cho cả chơi game lẫn sáng tạo nội dung

    19/05/2026
    9.7

    Đánh giá OPPO Find X9s: Khi smartphone nhỏ gọn mang tham vọng thay thế máy ảnh chuyên nghiệp

    09/05/2026
    9.5

    Đánh giá realme P4 Power 5G: Pin 10.001 mAh không chỉ là con số, mà là trải nghiệm thay đổi cách dùng smartphone

    09/04/2026
    Được quan tâm nhiều
    Bảo mật

    Video nhạy cảm từ ‘hack’ camera rao bán tràn lan trên mạng Internet

    16/04/2021Gia Nguyên

    Mục tiêu chính của các nhóm tội phạm là hack camera giấu kín tại các…

    Cách lấy lại lịch sử Chat GPT bị mất của bạn

    08/04/2023

    Cách khắc phục lỗi không lưu được file PDF đã sửa

    15/05/2022

    Tải về hình nền wallpaper iPhone 16 và iPhone 16 Pro, Pro Max

    10/09/2024

    Cách cài đặt Ryujinx làm Trình giả lập Nintendo Switch cho PC của bạn

    12/07/2023

    Bên trong ASUS AI Lab tại Đài Loan: Hậu trường của những hệ thống AI quy mô hàng đầu thế giới

    01/06/2026

    Download tải về hình nền wallpaper iPhone 15, 15 Pro và 15 Pro Max

    13/09/2023

    Cách tạo trang bìa trong Google Docs

    21/04/2023

    Cách lưu hình ảnh từ Google Maps

    31/05/2023

    Cách lưu các mẫu và thành phần Canva yêu thích của bạn bằng cách gắn dấu sao cho chúng

    21/06/2023

    COMPUTEX 2026: Sự kiện công nghệ toàn cầu quy tụ “gã khổng lồ” cho kỷ nguyên hợp tác mới

    12/01/2026

    4 cách để nhận giấy phép Microsoft 365 miễn phí: Cách nhận Microsoft 365 mà không cần mua đăng ký

    06/11/2023
    DMCA.com Protection Status DMCA Compliance Information
    TechTimes Vietnam
    Facebook X (Twitter) Instagram YouTube LinkedIn TikTok
    TechTimes là trang thông tin điện tử tổng hợp; Cơ quan chủ quản: Công ty TNHH TechTimes; Địa chỉ: 39/8A đường 475, khu phố 41, P. Phước Long, TP. HCM; Chịu trách nhiệm nội dung: Ông NGUYỄN VĂN ĐÔ; Giấy phép: Giấy phép thiết lập trang thông tin điện tử tổng hợp số 39/GP-STTTT do Sở Thông tin và Truyền thông Thành phố Hồ Chí Minh cấp ngày 21/08/2017; Giấy phép bổ sung số 23/GP-STTTT cấp ngày 23/03/2021 và quyết định cập nhật số 03/QĐ-STTTT-ICP do Sở TTTT cấp ngày 01/03/2024.

    © 2026 TechTimes.vn - Cập nhật liên tục tin tức, đánh giá sản phẩm, chia sẻ kinh nghiệm sử dụng sản phẩm công nghệ cao, nhận định - phân tích từ chuyên gia uy tín - Email: info@techtimes.vn , Điện thoại: 0935014085• Powered by vHost

    Gõ từ khoá và nhấn Enter để tìm kiếm bài viết trên TechTimes. Nhấn Esc để huỷ.