A quick start project that helps you to create an Angular 4 Rich Text Editor with a minimal code configuration. Angular 4 Rich Text EditorThe following section explains the steps required to create a simple Angular 4 Rich Text Editor component. Project pre-requisitesMake sure that you have the compatible versions of TypeScript and Angular in your machine before starting to work on this project.
Angular 4 Rich Text Editor – IntroductionThe Angular 4 Rich Text Editor used in this project is created from the Syncfusion `ej2-angular-richtexteditor` package. You can simply define it as <ejs-richtexteditor> within the template. DependenciesBefore starting with this project, the Angular 4 Rich Text Editor requires to add the Syncfusion `ej2-angular-richtexteditor` package from npmjs, which are distributed in npm as @syncfusion scoped packages. Creating Angular ProjectTo create the Angular project using the Angular CLI tool, follow the steps:
Adding Angular 4 RichTextEditor You can add the Angular 4 Rich Text Editor component by using the `ejs-richtexteditor` directive, and the attributes used within this tag allows you define other richtexteditor functionalities. To add the Angular 4 Rich Text Editor, follow the steps:
[app.module.ts] import { BrowserModule, } from '@angular/platform-browser'; import { RichTextEditorAllModule } from '@syncfusion/ej2-angular-richtexteditor'; import { NgModule } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, FormsModule, RichTextEditorAllModule ], bootstrap: [AppComponent] }) export class AppModule { }
[app.component.html] <ejs-richtexteditor></ejs-richtexteditor>
[index.html] <link href="https://cdn.syncfusion.com/ej2/material.css" rel="stylesheet" />
Screenshot Toolbar items configurationTo enable the toolbar options in the Rich Text Editor, import the required module services from the ej2-angular-richtexteditor package. Then, mention it in the providers section within the app.component.ts file. By default, the Rich Text Editor does not display the toolbar. To change the toolbar, the `toolbarSettings` property can be used. [app.component.ts] import { Component } from '@angular/core'; import { ToolbarService, LinkService, ImageService, HtmlEditorService, TableService } from '@syncfusion/ej2-angular-richtexteditor'; @Component({ selector: 'app-container', template:`<ejs-richtexteditor id='iframeRTE' [(value)]='value' [toolbarSettings]='tools'></ejs-richtexteditor>`, providers: [ToolbarService, LinkService, ImageService, HtmlEditorService, TableService] }) export class AppComponent { public tools: object = { items: [ 'Bold', 'Italic', 'Underline', 'StrikeThrough', '|', 'FontName', 'FontSize', 'FontColor', 'BackgroundColor', '|', 'LowerCase', 'UpperCase', '|', 'Undo', 'Redo', '|', 'Formats', 'Alignments', '|', 'OrderedList', 'UnorderedList', '|', 'Indent', 'Outdent', '|', 'CreateLink','CreateTable', 'Image', '|', 'ClearFormat', 'Print', 'SourceCode', '|', 'FullScreen'] }; }
[app.component.html] <ejs-richtexteditor #toolsRTE id='alltoolRTE' [toolbarSettings]='tools' >
Screenshot Setting value on Rich Text EditorYou can populate the empty Rich Text Editor with value by binding the string data to it through the `value` property initially. [app.component.ts] import { Component } from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { public value: string = ` <p>The RichTextEditor triggers events based on its actions. </p> <p> The events can be used as an extension point to perform custom operations.</p> }
Now, assign this value to the `value` property of Angular Rich Text Editor within the app.component.html file. [app.component.html] <ejs-richtexteditor id='defaultRTE' [(value)]='value' ></ejs-richtexteditor>
Screenshot Getting the value on form submitBy using the ngModel, you can get the value from the ngform submit. [app.component.ts] import { Component,ViewChild } from '@angular/core'; import {NgForm} from '@angular/forms'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { onSubmit(form: NgForm): void { alert(form.value.name); } }
[app.component.html] <form #form='ngForm' (ngSubmit)="onSubmit(form)"> <div class="form-group"> <ejs-richtexteditor #fromRTE [(value)]='value' required name="name" [(ngModel)]="value" ></ejs-richtexteditor> <button type="submit" ejs-button>Submit</button> </div> </form>
Run the application with the command “ng serve” in the command prompt. you can view the Angular RichTextEditor output with data and other settings. Screenshot There are more options to explore with Angular 4 Rich Text Editor and you can also try to play with the downloadable example link in this knowledge base article. Downloadable example link: Angular 4 RichTextEditor
|
This page will automatically be redirected to the sign-in page in 10 seconds.