angular(angular.io)的官方网站显示main.ts是我们应用程序的入口点,意味着执行的第一个文件是main.ts.之后app.module.ts等等。但是当我在这些文件上添加警报时,发现app.module.ts首先到达,然后是main.ts和index.html。为什么?我的实验如下。
//文件顶部
警告('main.ts reach');
警告('app.module.ts已到达')
警告('index.html已达到')
现在,我看到的第一条消息是app.module.ts reached
,然后是main.ts reached
和index.html reached
。
我的问题是,如果main.ts是切入点,那么为什么我不能先看到main.ts reached
? app.module.ts是否在main.ts之前加载?我无法在任何地方找到“角4请求服务流程”的流程图。如果你能提供或清除我的流量,那就很好了。
答案 0 :(得分:2)
我并不确切知道您在这些文件中指定了哪些邮件...但与大多数Web应用程序一样,index.html文件首先关闭并进行处理。
如果您使用ng build --prod
,您将在dist文件夹中看到为生产准备的生成文件。在index.html文件中,您将看到它引用了bundle。这些包被下载和处理。
您还可以查看捆绑包的内容并查看它们正在运行的JavaScript。
所以它不像你上面提到的那样有条理。 : - )
加载Angular时...它会引导main.ts中定义的模块...这是你的AppModule。
platformBrowserDynamic().bootstrapModule(AppModule);
另请注意,您正在使用TypeScript文件。这些文件被转换为JavaScript,然后由Angular编译器编译。因此,您需要仔细查看以确定执行警报的位置/时间。