首页 > 其他分享 >关于 Angular 应用的入口

关于 Angular 应用的入口

时间:2023-02-18 20:44:40浏览次数:46  
标签:文件 src app ts 入口 应用程序 应用 main Angular

ANGULAR.JSON 是包含 Angular 项目的各种属性和配置的文件。这是构建器首先引用的文件,用于查找所有路径和配置并检查哪个是主文件。下面是一个 hello-world 应用程序的 angular.json 文件,在 build 部分下,可以看到如下选项对象:

"options":{  
    "outputPath":"dist/hello-world",
    "index":"src/index.html",
    "main":"src/main.ts",  // THIS LINE
    "polyfills":"src/polyfills.ts",
    "tsConfig":"src/tsconfig.app.json",
    "assets":[  
       "src/favicon.ico",
       "src/assets"
     ],
    "styles":[  
       "node_modules/bootstrap/dist/css/bootstrap.min.css",
       "src/styles.css"
     ],
    "scripts":[],
    "es5BrowserSupport":true
}

它有一个对 main.ts 文件的引用,该文件告诉构建器从哪里启动应用程序。

main.ts

该文件充当应用程序的入口点。

这个入口点是在 Angular 用来支持模块化功能的 webpack 内部定义的。

main.ts 的路径/名称可以更改,但也应在 angular.json 文件中更改。

main.ts 有助于为应用程序运行创建浏览器环境。

这是通过以下方式完成的:

import { platformBrowserDynamic } from ‘@angular/platform-browser-dynamic’;

在此之后,main.ts 文件调用函数 bootstrapModule(AppModule) 告诉构建器引导应用程序。

platformBrowserDynamic().bootstrapModule(AppModule)

app.module.ts

从 main.ts 文件中可以清楚地看出,我们正在使用 AppModule 引导应用程序。 此 AppModule 在 APP.MODULE.TS 文件中定义,该文件位于:

<project_directory>/src/app/app.module.ts

这是使用 @NgModule 装饰器创建的模块,它包含我们在 app 模块中创建的所有组件的声明,以便 Angular 能够识别它们。 在这里,我们还有 imports 数组,我们可以在其中导入其他模块并在我们的应用程序中使用。

下面是一个 app.module.ts 文件的示例,其中声明了一个测试组件并导入了两个模块。

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
@NgModule({
   declarations: [
      AppComponent,
      TestComponent
   ],
   imports: [
      BrowserModule,
      FormsModule
   ],
   providers: [],
   bootstrap: [AppComponent]
})
export class AppModule { }

AppComponent

从上面的 app.module.ts 文件中,我们可以清楚地看到模块要求引导应用程序组件。

这个应用程序组件在 app.component.ts 文件中。

这是与网页的 html 交互并为它提供数据的文件。

该组件是使用从@angular/core 导入的@Component 装饰器制作的。 该组件有一个选择器,就像一个自定义的 html 标签,我们可以使用它来调用该组件。

然后它有 template 或 templateUrl,其中包含要显示的页面的 html。 它还具有 styleUrls 数组,可以在其中放置特定于组件的样式表。

标签:文件,src,app,ts,入口,应用程序,应用,main,Angular
From: https://www.cnblogs.com/sap-jerry/p/17133540.html

相关文章

  • Angular 应用里 index.html 的作用
    index.html位于应用程序的src文件夹中。编译器在此文件的末尾动态添加所有javascript文件。由于现在所有组件都是已知的,因此html文件调用根组件即app-root。根......
  • c语言高级应用实验报告
    题目一:按要求将程序补充完整。有n个整数,使前面各数顺序向后移动m个位置,余下n-m个数变成最前面的数。写一个函数voidmoveNumber(int*pnum,intn,intm)实现以上功能。 ......
  • Verilog之异或^的应用
    一、用于两个整数的值进行交换,不用借助第三个变量。若a=5(0101),b=10(1010)经以下变换,可完成值的交换:a=a^b;0101^1010=1111b=b^a;1010^1111=0101a=a^b; 1......
  • RabbitMQ工作原理及应用
    工作模式https://www.rabbitmq.com/getstarted.html上图,列出了RabbitMQ的使用模式,学习上面的模式,对理解所有消息队列都很重要。名词解释名词说明server服务......
  • 拉格朗日插值小应用
    关于拉格朗日插值:我只会最简单的形式喵。就是给\(n\)个点值,就能在\(O(n^2)\)的时间复杂度内求出当\(x=a\)的时候的值。其标准形式是:\(\displaystyle\sum_{i=1}^n......
  • Linux配置应用自启动,碰到一些问题
    最近在搞一个arm-linux,发现自动运行与手动运行,竟然效果是不一样,在解决问题的同时,也顺便把Linux启动相关一些知识梳理一遍。 问题1:在/etc/init.d/新建一个S90startapp......
  • 高CPU Java应用分析
    模拟CPU40%左右importjava.util.concurrent.CountDownLatch;publicclassMainextendsThread{privateCountDownLatchc;publicMain(Stringname,Cou......
  • 关于 Angular Universal 应用执行时需要 Browser API 的问题
    由于AngularUniversalApplication不在浏览器中执行,因此服务器上可能缺少某些浏览器API和功能。例如,服务器端应用程序不能引用仅供浏览器使用的全局对象,例如Window,Do......
  • 人大金仓数据库索引的应用与日常运维
    索引的应用一、常见索引及适应场景BTREE索引是KES默认索引,采用B+树实现。适用场景范围查询和优化排序操作。不支持特别长的字段。HASH索引先对索引列计算一个散列值(类似md5......
  • Edgio赞助OWASP ModSecurity CRS,进一步推动以OWASP核心规则集为基础的高级应用安全发
    亚利桑那州凤凰城,2023年2月2日—EdgioInc.(纳斯达克:EGIO),作为以速度、安全性和易用性著称的首选平台,Edgio今天宣布成为开放网络应用安全项目(OWASP)下,ModSecurity核心规则集......