Skip to main content

Ancienne version

svelte/register

Modifier cette page sur Github

Cette API a été retirée de Svelte 4. La fonction require est maintenant dépréciée puisque les versions actuelles de Node comprennent le format ESM. Utilisez plutôt un bundler comme Vite ou le framework SvelteKit pour créer des modules JavaScript à partir de composants Svelte.

Pour rendre des composants Svelte en Node.js sans compilation, utilisez require('svelte/register'). Vous pourrez alors utiliser la fonction require pour inclure n'importe quel fichier .svelte.

ts
require('svelte/register');
const App = require('./App.svelte').default;
// ...
const { html, css, head } = App.render({ answer: 42 });

Le .default est nécessaire parce que nous convertissons des modules JavaScript natifs en modules CommonJS interprétés par Node. Notez cependant que si vos composent importent des modules JavaScript, ils ne réussirons pas à les charger avec Node et vous devrez utiliser un bundler.

Pour définir des options de compilations ou utiliser une extension de fichier personnalisée, appelez le retour de la fonction register() comme une fonction :

ts
require('svelte/register')({
extensions: ['.customextension'], // par défaut ['.html', '.svelte']
preserveComments: true
});