Легко добавляйте абзацы в файлы Docx в Angular с помощью Docx.js

В этой статье блога мы рассмотрим, как добавлять абзацы в файлы Docx в приложении Angular с помощью популярной библиотеки Docx.js. Мы углубимся в несколько методов и предоставим примеры кода, которые помогут вам добиться этого без особых усилий. Итак, начнём!

Метод 1: использование цикла ForEach
Один из способов добавить абзацы в файл Docx в Angular с помощью Docx.js — использовать возможности цикла forEach. Цикл forEachпозволяет нам перебирать массив данных и выполнять определенное действие с каждым элементом. Вот пример того, как вы можете использовать его для добавления абзацев:

import * as docx from 'docx';
// Create a new Document instance
const document = new docx.Document();
// Array of paragraphs
const paragraphs = ['First paragraph', 'Second paragraph', 'Third paragraph'];
// Iterate over the paragraphs array
paragraphs.forEach((paragraph) => {
  // Create a new Paragraph instance
  const newParagraph = new docx.Paragraph(paragraph);
  // Add the paragraph to the document
  document.addParagraph(newParagraph);
});
// Generate the Docx file
docx.Packer.toBlob(document).then((blob) => {
  // Save or download the Docx file
});

В этом примере мы создаем новый экземпляр Document, используя docx.Document(). Мы определяем массив абзацев и перебираем их, используя цикл forEach. Внутри цикла мы создаем новый экземпляр Paragraphдля каждого абзаца и добавляем его в документ с помощью document.addParagraph(). Наконец, мы создаем файл Docx с помощью docx.Packer.toBlob()и сохраняем или загружаем его по желанию.

Метод 2: использование цикла For
Другой подход к добавлению абзацев в файл Docx в Angular — использование традиционного цикла for. Этот метод обеспечивает больший контроль над процессом итерации и позволяет дополнительно настраивать его. Вот пример:

import * as docx from 'docx';
// Create a new Document instance
const document = new docx.Document();
// Array of paragraphs
const paragraphs = ['First paragraph', 'Second paragraph', 'Third paragraph'];
// Iterate over the paragraphs array
for (let i = 0; i < paragraphs.length; i++) {
  // Create a new Paragraph instance
  const newParagraph = new docx.Paragraph(paragraphs[i]);
  // Add the paragraph to the document
  document.addParagraph(newParagraph);
}
// Generate the Docx file
docx.Packer.toBlob(document).then((blob) => {
  // Save or download the Docx file
});

В этом примере мы определяем цикл forс индексной переменной i, которая перебирает массив paragraphs. Внутри цикла мы создаем новый экземпляр Paragraphдля каждого абзаца и добавляем его в документ. Наконец, мы создаем файл Docx и сохраняем или загружаем его.

Используя цикл forEachили for, вы можете легко добавлять абзацы в файлы Docx в Angular с помощью библиотеки Docx.js. Эти методы обеспечивают гибкость и позволяют динамически создавать документы с несколькими абзацами. Не забудьте изучить документацию Docx.js, чтобы узнать о более продвинутых функциях и возможностях настройки.