Czym jest pipe w kontekście rozwoju webowego?
sobes.tech AI
Odpowiedź od AI
W kontekście rozwoju web, szczególnie w frameworkach takich jak Angular, pipe (rura) to funkcja, która przekształca dane wejściowe w pożądany format do wyświetlenia w szablonie. Pipe są używane do filtrowania, formatowania lub sortowania danych bez zmiany samego modelu danych. Zwiększają ponowne użycie kodu i poprawiają czytelność szablonu.
Przykłady użycia:
- Formatowanie dat: zamiana obiektu
Datena łańcuch w określonym formacie (MM/dd/yyyy). - Formatowanie walut: dodanie symbolu waluty i formatowanie liczby.
- Zmiana wielkości liter tekstu: konwersja tekstu na wielkie lub małe litery.
- Filtrowanie list: wyświetlanie tylko tych elementów listy, które spełniają określone kryteria.
- Sortowanie list: uporządkowanie elementów.
Składnia użycia w szablonie Angular:
<!-- Wyświetlenie daty w formacie MM/dd/yyyy -->
<p>{{ someDate | date:'MM/dd/yyyy' }}</p>
<!-- Wyświetlenie liczby jako waluty -->
<p>{{ price | currency:'USD':'symbol':'1.2-2' }}</p>
<!-- Konwersja tekstu na wielkie litery -->
<p>{{ someText | uppercase }}</p>
W innych kontekstach rozwoju web (np. w backendzie z Node.js lub przy pracy z przepływami danych), "pipe" może odnosić się do mechanizmu przekazywania wyjścia jednej komendy lub funkcji jako wejścia do innej, co pozwala na łączenie operacji. Na przykład, w Node.js stream.pipe() służy do przesyłania danych z odczytu do zapisu.
// Przykład użycia pipe w Node.js do kopiowania pliku
const fs = require('fs');
const readStream = fs.createReadStream('input.txt');
const writeStream = fs.createWriteStream('output.txt');
readStream.pipe(writeStream); // Przesyłanie danych z readStream do writeStream
Jednak najczęściej spotykane znaczenie "pipe" w kontekście frontendu, szczególnie w nowoczesnych frameworkach, wiąże się z przekształcaniem danych do wyświetlenia w szablonach.