棱角入门:初学者指南

什么是 棱角?你为什么要为你的项目使用它?提供了哪些优势?如何开始用角度开始?在本文中,您将找到所有答案和有用的提示,使您的旅程变得容易有效。

什么是角度?

这是一个基于类型的平台,适用于从单开发人员到企业级应用程序的不同复杂性的项目,包括:

  • 基于组件的框架
  • 包含良好的集成和详尽令人遗憾的库,其包含不同的功能,如路由,客户端 - 服务器通信,表单管理等。
  • 一种用于开发可扩展应用,测试和更新代码的工具包以及更多。

根据这一点 统计数据,Angular被在JavaScript上设计的所有网站的0.4%使用。如谷歌,监护人,通用汽车,HBO,Netflix,Ing,Nike,PayPal,索尼等组织和企业使用角。

2010年,AngularJS由Google推出,作为用纯粹的JavaScript编写的开源项目,让开发人员将基于HTML的文档转化为动态内容。 2014年,创作者开始重写AngularJS,以设计更强大的框架,并提供新的功能和工具。

2016年,全新的版本 - Angular 2被释放,产生了许多变化:

  • 它被重写在打字标记;
  • 它支持移动;
  • 建筑风格切换到基于组件;
  • 它收到了一个新的内置编译器;
  • 语法改变了;
  • 应用规模减少了。

在这里,Angularjs和Angular是不同的框架。目前,它的现代形式有很多新版本的角度,包括2到9的版本,该版本于2020年2月推出。Angular和所有进一步的版本(Angular 2+)在AngularJS上有许多好处,如更直观项目结构和编程范例,角CLI,更多结构化编码语言等。

角度Web开发人员的基本技能

今天它不足以知道编程语言。成功 角网开发人员 需要不同的技能。这是一个基本的艰难技能列表,一个良好的角度开发人员必须必须建立一个强大的应用程序。

  1. NPM(节点包管理器) 主要工具不仅适用于Node.js开发,而且是其他人。它用于安装数千个客户端Web开发包。
  2. 棱角 CLI(命令行界面) 是使用NPM安装的第一个包,可以通过允许开发人员为新的和现有应用程序添加新的组件,模块,服务来更轻松,更快地编写应用程序的程序。
  3. HTML和CSS.。尽管可以使用角框架开发快速和功能性应用,但是必须在浏览器中呈现应用程序。因此,开发人员是用HTML和CSS构建用户界面。
  4. 角框架。一个良好的开发人员应该对框架进行牢固的理解,以便他/她可以有效地利用框架的工具和优势来简化和加速过程。
  5. 类型签字 是用于编写客户端Web应用程序的JavaScript的超集。 TypeScript的关键功能是:
    • 增加了快速重构代码的能力,以便在不必担心打破任何现有功能的情况下,您可以在任何情况下更新和更改应用程序;
    • 减少错误因为,由于强大的打字,开发团队使用变量和功能,因为它们是旨在使用的。
  6. rxjs. 是一个用于使用可观察流的无功编程创建的库。虽然它独立存在,但是图书馆用角度捆绑。它通常用于使HTTP请求进行数据,并为异步任务提供一致的API。因此,开发人员更好地熟悉图书馆。
  7. Git. 允许开发人员在充满信心地尝试新功能和编码技术。使用它,开发人员团队可以快速轻松地返回以前版本的代码。因此,GIT帮助工程师安全地向应用程序进化,而不会担心打破现有功能。

角元素概述

建立一个应用程序,将其分解为要素,了解它们是如何互动的,这是至关重要的,然后只是做用户所期望的事情。每个角度应用程序包含组件或模块的集合。轮到他们,组件是一种特殊类型的指令,指示特定UI元素的行为。服务维护彼此的组件和后端资源之间的参考。使用数据绑定,所有此代码都从模型实时显示为查看组件。下面您会发现代码的每个部分的示例看起来像。

模块

它是一个像集装箱和课程之间的混合动力。模块包含相同功能的类似管道,组件和指令。模块的亮点是开发人员可以一次性导出和导入,使工程师能够在应用程序中重复使用模块。然而,考虑每个组件只能是一个模块的一部分。

以下是模块的样子:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import {FormsModule} from '@angular/forms';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { AssessmentsModule } from './assessments/assessments.module';
import { CoreModule } from './core/core.module';
import { SharedModule } from './shared/shared.module';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
@NgModule({
  declarations: [
    AppComponent,
  ],
  imports: [
    BrowserModule,
    AppRoutingModule, AssessmentsModule, CoreModule, SharedModule, FormsModule, BrowserAnimationsModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

来源

组件

它是用于角度应用的基本构建块。每个组件包括:

  • 带有@component()装饰器的打字类;
  • HTML模板;
  • 风格。

所谓的视图是由明确组件控制的用户界面的一部分。当用户通过应用程序导航时,将创建,更新,销毁组件。此外,这种组件可以包含响应不同事件(如鼠标悬停),单击等的动态元素。

这是一个组件的一个例子以及它如何看起来像:

@Component({
  selector: 'app-child-one',
  templateUrl: './child-one.component.html',
  styleUrls: ['./child-one.component.scss']
})
export class ChildOneComponent{ }

来源

指令

可以扩展任何HTML元素的行为 指令。有 2主要类型 of directives:

  • 属性指令 allow the developers to extend the appearance or behavior of the elements inside the template. For example, NgStyle is a commonly used attribute directive that enables software engineers to change the style of several elements at once.
  • 结构指令 help developers work on the layout of the data like applying conditions or looping through it, and many more. An asterisk (*) is used before the directive name.

* Ngfor. * ngif. 是常用的结构指令。

  • * NGIF作为一个IF:
<div *ngIf="showElement">
  <div>This element is based on the showElement condition</div>
</div>

来源

  • * NGFOR作为循环以循环通过阵列:
<table class ="table table-striped" >
  <tr *ngFor="let u of users">
    <td>
      {{u.id}}
    </td>
    <td>
      {{u.name}}
    </td>
    <td>
      {{u.model}}
    </td>
  </tr>
</table>

来源

服务

This is what connects components to their data source. Services are required for components to fetch data to display. Services use a dependency injection system to keep track of which classes (export class) depend on which data sources (providedIn).

这是一个例子:

import { Injectable } from '@angular/core';
@Injectable({
  providedIn: 'root'
})
export class ExampleService {
  constructor() { }
}

来源

如何创建角度应用程序

在使用Angular开发Web应用程序的第一步中,您需要安装框架和所有必需的工具。在下面,您将找到一个逐步的指令 如何创建角度应用程序.

安装所有必要的工具

首先,需要角度的CLI。它是一个要安装的必备工具,以便您可以创建新项目,生成元素,打开文档,构建,服务,调试,部署等。但是,在安装Angular CLI,Node.js和NPM之前需要:

  1. 访问node.js网站;
  2. 使用包含NPM的下载和安装Node.js。

运行下一个命令以验证是否已安装Node.js: 

node --version
npm --version

之后,运行以下命令以安装Angular CLI:

npm install -g @angular/cli

通过运行以下命令,您将验证安装是否成功:

ng --version

使用Angular CLI构建应用程序

直接安装完成后,您可以通过运行命令来生成新项目:

ng new. <app-name>

代替 `<app-name>` 使用您的项目名称开始构建您的应用程序。

系统将提示您包含Angular路由和CSS格式以用于您的项目。随着“NG New`”命令的争论,可以随意传递这些。 

本地运行Angular App

点击 下载项目 在左侧菜单中下载文件 -  来自stackblitz的源代码。之后,您需要通过使用新的角CLI工作空间 ng new. 命令,其中 我的项目名称 是您项目的名称:

ng new. my-project-name

然后你需要替换 / src. 文件夹与 / src. 来自您的StackBlitz的文件夹下载在新的CLI生成的应用程序中。

使用以下CLI命令在本地运行应用程序:

ng serve

http:// localhost:4200 / 在浏览器中查看应用程序。如果默认端口4200不可用,则可以指定另一个端口,例如:

ng serve --port 4201

您可以编辑代码并检查浏览器中的自动更新更改。按Ctrl + C停止NG服务命令。

部署Angular App

最后一步是部署您的应用程序。有很多方法可以托管Web应用程序以及如何完成:AWS,Azure,GCP,NetLify,GitHub页面,Firebase托管等。此外,您可以旋转apache或nginx服务器以托管文件。

但是,您需要将所有元素编译和包装到一个应用程序中。使用以下代码将所有所需的项目包装为单个HTML文件,几个CSS和JavaScript文件以及其他资产(视频,图像,GIF等)并将其上传到部署平台:

ng build --prod

之后,将在名为的文件夹中创建并添加项目目录中的一些文件 `dist /`. 

有一种更简单的选择方法。您可以使用启用命令的其中一个工具 `ng部署` 该服务将编译,构建,包和部署角度应用程序。因此,不需要手动上传必要的文件。

下次学到什么 

所有这些只是你的角度之旅的开始。现在您熟悉基本组件,并概述它是如何工作的。移动到更高级的概念,学习以下几个方面:

  • 表格及其验证,以提高CRUD应用中的用户体验;
  • 对构建单页应用的路由支持(SPA);
  • 依赖注入自动化代码依赖性注入,避免使用main()方法;
  • 使用CRUD和API操作。

棱角学习开始:最后的想法

选择Angular用于开发应用程序,您将获得以下优势:

  • 跨平台兼容性;
  • 高应用性能;
  • 高负荷速度;
  • 清洁和强大的代码;
  • 代码可重用性;
  • 简单更新;
  • MVC架构(模型 - 视图控制器);
  • 双向数据绑定;
  • 路由支持;
  • 依赖注入;
  • 表单验证,还有更多。

但是,这不是最简单的方法。角度有一个陡峭的学习曲线。因此,您应该准备花一些时间学习平台的功能,工具和其他选择。然而,它是一个开源平台,提供大量广泛的图书馆。因此,值得努力的努力,因为Angular有助于您更快地构建高度可扩展和强大的应用程序,可以轻松修改和更新,以满足最终用户的需求。

欢迎您的意见!

MediSign  -  ehr用于小医疗实践

EHR用于小医疗实践

病历。约会。电子发票。

每月9美元