Angular PrimeNG FileUpload Пользовательская загрузка
Angular PrimeNG — это фреймворк с открытым исходным кодом с богатым набором собственных компонентов пользовательского интерфейса Angular, которые используются для отличного стиля, и этот фреймворк используется для очень легкого создания адаптивных веб-сайтов. В этой статье мы увидим, как использовать пользовательскую загрузку FileUpload в Angular PrimeNG.
Пользовательская загрузка Angular PrimeNG FileUpload используется для переопределения реализации загрузки путем определения пользовательского события обработчика загрузки.
Пользовательские свойства загрузки Angular PrimeNG FileUpload:
- имя: это имя параметра запроса для распознавания загруженного файла на бэкэнде.
- URL-адрес: это удаленный URL-адрес для загрузки файла.
- customUpload: используется для определения того, следует ли использовать загрузку по умолчанию или использовать пользовательскую реализацию загрузки, определенную с помощью uploadHandler.
- auto: это логическое свойство, при включении которого файлы будут загружаться автоматически при выборе.
Синтаксис:
// In app.component.html
<p-fileUpload name="..."
url="..."
[customUpload]="true"
(uploadHandler)="function()">
</p-fileUpload>
// In app.component.ts
function() {
// function content
}Создание приложения Angular и установка модуля:
Шаг 1: Создайте приложение Angular, используя следующую команду.
ng new appname
Шаг 2: После создания папки проекта, т. е. имени приложения, перейдите к ней с помощью следующей команды.
cd appname
Шаг 3: Установите PrimeNG в указанный вами каталог.
npm install primeng --save npm install primeicons --save
Структура проекта: Это будет выглядеть следующим образом:
Пример 1: Ниже приведен простой пример, демонстрирующий использование пользовательской загрузки Angular PrimeNG FileUpload.
- app.component.html
HTML
<h2 style="color: green"> GeeksforGeeks</h2><h4> Angular PrimeNG FileUpload Custom Upload</h4> <p-fileUpload name="myfile[]" url="./upload.php" [customUpload]="true" (uploadHandler)="uploadfun($event)" [auto]="true"></p-fileUpload> |
- app.component.ts
Javascript
import { Component, OnInit } from "@angular/core"; @Component({ selector: "app-root", templateUrl: "./app.component.html", providers: [],})export class AppComponent { constructor() { } ngOnInit() { } uploadfun(event) { console.log(event); }} |
- app.module.ts
Javascript
import { NgModule } from "@angular/core";import { BrowserModule } from "@angular/platform-browser";import { BrowserAnimationsModule } from "@angular/platform-browser/animations";import { FileUploadModule } from "primeng/fileupload";import { AppComponent } from "./app.component";import { HttpClientModule } from "@angular/common/http";import { ButtonModule } from "primeng/button"; @NgModule({ imports: [ BrowserModule, BrowserAnimationsModule, ButtonModule, HttpClientModule, FileUploadModule, ], declarations: [AppComponent], bootstrap: [AppComponent],})export class AppModule { } |
Выход:
Пример 2: Ниже приведен еще один пример, демонстрирующий использование пользовательской загрузки Angular PrimeNG FileUpload, где мы загружаем несколько файлов с помощью перетаскивания с пользовательской функцией загрузки.
- app.component.html
HTML
<h2 style="color: green"> GeeksforGeeks</h2><h4> Angular PrimeNG FileUpload Custom Upload</h4> <p-fileUpload name="myfile[]" url="./upload.php" multiple="multiple" [customUpload]="true" (uploadHandler)="uploadfun($event)" [auto]="true"></p-fileUpload> |
- app.component.ts
Javascript
import { Component, OnInit } from "@angular/core"; @Component({ selector: "app-root", templateUrl: "./app.component.html", providers: [],})export class AppComponent { constructor() { } ngOnInit() { } uploadfun(event) { console.log("Multiple Files are uploaded: ", event.files); }} |
- app.module.ts
Javascript
import { NgModule } from "@angular/core";import { BrowserModule } from "@angular/platform-browser";import { BrowserAnimationsModule } from "@angular/platform-browser/animations";import { FileUploadModule } from "primeng/fileupload";import { AppComponent } from "./app.component";import { HttpClientModule } from "@angular/common/http";import { ButtonModule } from "primeng/button"; @NgModule({ imports: [ BrowserModule, BrowserAnimationsModule, ButtonModule, HttpClientModule, FileUploadModule, ], declarations: [AppComponent], bootstrap: [AppComponent],})export class AppModule { } |
Выход:
Ссылка: https://primefaces.org/primeng/fileupload