πŸ§ͺ Π’ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Ρ‹

Stage: prototyping

ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Π΅Ρ‚ бСзопасный способ построСния URL-адрСсов Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

Установка

  1. npm install github:BuilderIo/qwik-labs-build#main
  2. ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» vite.config.ts
// ...
import { qwikTypes } from '@builder.io/qwik-labs/vite';
 
export default defineConfig(() => {
	return {
		plugins: [
			// ...
			qwikTypes() // <== Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ `qwikTypes()` ΠΊ списку ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ².
		],
	// ...
};
});
  1. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ build, которая сгСнСрируСт Ρ„Π°ΠΉΠ»Ρ‹ ~/routes.gen.d.ts ΠΈ ~/routes.config.tsx.
  2. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ типобСзопасный ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚:
import { AppLink } from '~/routes.config';
 
export default component$(() => {
	// ...
	return (
		// ...
		<AppLink route="/your/[appParam]/link/" param:appParam={"some-value"}>
			Link text
		</AppLink>
	);
});

Участники

Бпасибо всСм участникам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ эту Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ Π»ΡƒΡ‡ΡˆΠ΅!

  • mhevery