Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Init history"v5.5.1029.06.2025
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюЯкщо у вас є ідея щодо покращення цієї документації, будь ласка, долучіться, надіславши pull request на GitHub.
Посилання на документацію на GitHubСкопіювати документацію у форматі Markdown в буфер обміну
Вміст файлу / Вбудовування файлів в Intlayer
В Intlayer функція file дозволяє вбудовувати вміст зовнішніх файлів у dictionary. Такий підхід гарантує, що Intlayer розпізнає файл-джерело, що забезпечує плавну інтеграцію з Intlayer Visual Editor та CMS.
Чому використовувати file замість import, require або fs?
Щоб використовувати вбудований вміст файлу у клієнтських компонентах Next.js, отримайте його за допомогою хука useIntlayer. Ось приклад:
Налаштування вмісту файлу
Щоб вбудувати вміст файлу у ваш проект Intlayer, використовуйте функцію file у модулі контенту. Нижче наведені приклади, що демонструють різні реалізації.
Скопіюйте код у буфер обміну
import { file, type Dictionary } from "intlayer";
const myFileContent = {
key: "my_key",
content: {
myFile: file("./path/to/file.txt"),
},
} satisfies Dictionary;
export default myFileContent;
Використання вмісту файлу в React Intlayer
To use embedded file content in a React component, import and use the useIntlayer hook from the react-intlayer package. This retrieves the content from the specified key and allows it to be displayed dynamically.
Скопіюйте код у буфер обміну
import type { FC } from "react";
import { useIntlayer } from "react-intlayer";
const FileComponent: FC = () => {
const { myFile } = useIntlayer("my_key");
return (
<div>
<pre>{myFile}</pre>
</div>
);
};
export default FileComponent;
Щоб використовувати вбудований вміст файлу у клієнтських компонентах Next.js, отримайте його за допомогою хука useIntlayer. Ось приклад:
Скопіюйте код у буфер обміну
"use client";
import type { FC } from "react";
import { useIntlayer } from "next-intlayer";
const FileComponent: FC = () => {
const { myFile } = useIntlayer("my_key");
return (
<div>
<pre>{myFile}</pre>
</div>
);
};
export default FileComponent;
Щоб використовувати вбудований вміст файлу у компонентах Vue, отримайте його за допомогою хука useIntlayer. Ось приклад:
Скопіюйте код у буфер обміну
Щоб використовувати вбудований вміст файлу у компонентах Svelte, отримайте його за допомогою хука useIntlayer. Доступ до сховища здійснюється через $. Ось приклад:
Скопіюйте код у буфер обміну
Щоб використовувати вбудований вміст файлу у компонентах Preact, отримайте його за допомогою хука useIntlayer. Ось приклад:
Скопіюйте код у буфер обміну
import type { FC } from "preact";
import { useIntlayer } from "preact-intlayer";
const FileComponent: FC = () => {
const { myFile } = useIntlayer("my_key");
return (
<div>
<pre>{myFile}</pre>
</div>
);
};
export default FileComponent;
Щоб використовувати вбудований вміст файлу у компонентах SolidJS, отримайте його за допомогою хука useIntlayer. Ось приклад:
Скопіюйте код у буфер обміну
import type { Component } from "solid-js";
import { useIntlayer } from "solid-intlayer";
const FileComponent: Component = () => {
const { myFile } = useIntlayer("my_key");
return (
<div>
<pre>{myFile}</pre>
</div>
);
};
export default FileComponent;
Щоб використовувати вбудований вміст файлу у компонентах Angular, отримайте його за допомогою хука useIntlayer. Ось приклад:
Скопіюйте код у буфер обміну
Щоб використовувати вбудований вміст файлу із vanilla-intlayer, отримайте його за допомогою хука useIntlayer. Ось приклад:
Скопіюйте код у буфер обміну
import { installIntlayer, useIntlayer } from "vanilla-intlayer";
installIntlayer();
const content = useIntlayer("my_key").onChange((newContent) => {
document.getElementById("file-content")!.textContent = newContent.myFile;
});
// Initial render
document.getElementById("file-content")!.textContent = content.myFile;
Приклад багатомовного Markdown
Щоб підтримувати багатомовні редаговані Markdown-файли, ви можете використовувати file у поєднанні з t() та md() для визначення версій вмісту Markdown різними мовами.
Скопіюйте код у буфер обміну
import { file, t, md, type Dictionary } from "intlayer";
const myMultilingualContent = {
key: "my_multilingual_key",
content: {
myContent: md(
t({
en: file("src/components/test.en.md"),
fr: file("src/components/test.fr.md"),
es: file("src/components/test.es.md"),
})
),
},
} satisfies Dictionary;
export default myMultilingualContent;
Ця конфігурація дозволяє динамічно отримувати вміст залежно від мовних налаштувань користувача. При використанні в Intlayer Visual Editor або CMS система розпізнає, що вміст походить із зазначених Markdown-файлів, і забезпечить їхню можливість редагування.
Різні типи шляхів
Коли ви використовуєте функцію file, можна застосовувати різні типи шляхів, щоб вказати файл для вставки.
file("./path/to/file.txt")- Відносний шлях відносно поточного файлуfile("path/to/file.txt")- Відносний шлях відносно кореневої директорії проєктуfile("/users/username/path/to/file.txt")- Абсолютний шлях
Як Intlayer обробляє вміст файлу
Функція file базується на модулі fs у Node.js для читання вмісту вказаного файлу та вставлення його до словника. У поєднанні з Intlayer Visual Editor або CMS Intlayer може відстежувати зв’язок між словником і файлом. Це дозволяє Intlayer:
- Розпізнавати, що вміст походить із конкретного файлу.
- Автоматично оновлювати вміст словника при редагуванні пов’язаного файлу.
- Забезпечте синхронізацію між файлом та словником, зберігаючи цілісність вмісту.
Додаткові ресурси
Для детальнішої інформації щодо налаштування та використання вставки файлів в Intlayer зверніться до наступних ресурсів:
Ці ресурси надають додаткові відомості про вбудовування файлів, керування контентом та інтеграцію Intlayer із різними фреймворками.
