angularjs的起点在哪里

angularjs的起点在哪里,angularjs,where,Angularjs,Where,我是一名经验丰富的.ASPX开发人员,拥有大量的JavaScript,还完成了一些jQuery。即使是刚接触AngularJS的人,我也花了相当长的时间阅读并做了实践教程,很简单 但是,在完成了教程和简单的项目之后,我总是陷入困境,因为我不知道角度执行的起点在哪里,部分被这么多的.js文件和内嵌/可链接函数构造的编码风格弄糊涂了 Web表单后端通常从.cs文件的Page_Load()开始 我可以查找客户端jQuery和JavaScript -$.ready() -直接语句,如var x=。。。在

我是一名经验丰富的.ASPX开发人员,拥有大量的JavaScript,还完成了一些jQuery。即使是刚接触AngularJS的人,我也花了相当长的时间阅读并做了实践教程,很简单

但是,在完成了教程和简单的项目之后,我总是陷入困境,因为我不知道角度执行的起点在哪里,部分被这么多的.js文件和内嵌/可链接函数构造的编码风格弄糊涂了

Web表单后端通常从.cs文件的Page_Load()开始

我可以查找客户端jQuery和JavaScript -$.ready()
-直接语句,如var x=。。。在任何功能之外 定义

也许,我应该在第一个index.html中查找ng app和所有ng controller指令。如果有很多.js文件呢

我考虑使用客户端调试器设置一些断点。同样,如果我不知道该模块将被访问,则没有行可设置

如果有人能给我一个指引,告诉我如何执行,如何找到目标,我将不胜感激。这是我困惑的原因之一


如果这个问题太宽泛,我很抱歉

默认情况下,angularjs应用程序通过在html标记中查找ng应用程序或ng控制器属性自动引导。这是angularjs应用程序的js文件通常放在html文件末尾的方式。否则,javascript将在html完成加载之前执行,通常会在控制台输出中打印错误消息

您还可以使用document ready事件手动引导angular应用程序。看看:

在我的项目中,我使用手动引导仅在加载所有文件时运行angular应用程序。我定义了一个主函数,并在文档加载事件上运行该函数

            /// <summary>
            /// Bootstrap the ng-app on DOM loaded.
            /// </summary>
            $().ready(function () {
                main();
            });
//
///引导加载的DOM上的ng应用程序。
/// 
$().ready(函数(){
main();
});
在主功能中,我初始化了angular应用程序,例如加载模块、注册服务/控制器、设置路由

            /// <summary>
            /// Entry point of the application.
            /// </summary>
            function main() {

                ngModule = angular.module("YourApplication", ['ui.router', 'ui.bootstrap', 'ui.select', 'ui.slider', 'ngCookies']);

                // register services
                ngModule.service('AppManager', Services.AppManager);

                // register controllers
                 ngModule.controller("LoginController",Controllers.LoginController);

                ngModule.config(angularConfigure);

                // This line cause the angular app to bootstrap
                angular.bootstrap('body', ['YourApplication']);
            }
//
///应用程序的入口点。
/// 
函数main(){
ngModule=angular.module(“你的应用程序”、['ui.router','ui.bootstrap','ui.select','ui.slider','ngCookies'];
//注册服务
ngModule.service('AppManager',Services.AppManager);
//寄存器控制器
ngModule.controller(“LoginController”,Controllers.LoginController);
ngModule.config(angularConfigure);
//此行导致angular应用程序启动
bootstrap('body',['YourApplication']);
}
我发现了一个关于学习AngularJs的很好的资源集合,相信它会有所帮助


您提到的示例项目有一个名为app.js的文件。这是配置所有路由的地方。这是一个配置,它告诉angular根据浏览器中输入的url调用哪个控制器js。例如,对于/simplePaging,控制器是simpletrl,可以在simpletrl.js中找到。只要遵循app.js中的路线,您就应该能够理解代码。

Yang,谢谢您的指导。属性ng app和ng控制器就是我所想的。但是,有一些示例没有ng控制器,例如。AngularJS官方网站上的引导链接提到了使用NG_DEFER_引导的“延迟引导”!所以巴塔朗和阿利克斯可以参与这个过程。但它的记录很差。不知道您是否可以分享一些方法。@Jeb50请检查我的更新答案,希望能有所帮助。@Jeb50此链接解释ng控制器的工作原理。亚瑟,看起来很棒,谢谢你的帮助。现在正在取得进展。有趣的是它没有ng控制器。