我是一个经验丰富的.ASPX开发人员w/很多JavaScript,还有一些jQuery也是这样做的。即使是刚开始接触AngularJS,我也花了相当长的时间阅读,并且做了动手教程,很简单。
但是,经过教程和简单的项目之后,我总是陷入困境,因为我不知道角执行的起点在哪里,部分地被这么多的.js文件和内联/链式函数构造的编码风格所迷惑。
Web后端通常从.cs文件的.cs()开始。
客户端jQuery和JavaScript我可以查找- $.ready()
也许,我应该查找ng-app和第一个index.html中的所有ng控制器指令。那么,如果有许多.js文件呢?
我想使用客户端调试器设置一些断点。同样,如果我不知道这个模块将被访问,就没有行可设置。
如果有人能给我一个关于如何跟踪执行,如何找到位置的指导,我很感激。这是我搞不懂的样本工程之一
如果这个问题太宽泛,我很抱歉。
发布于 2015-06-30 00:32:02
默认情况下,angularjs应用程序通过在html标记中查找ng-app或ng-控制器属性自动引导。这是angularjs应用程序的js文件通常放在html文件末尾的方式。否则,javascript将在html完成加载之前执行,通常您将在控制台输出中得到一条错误消息。
您还可以使用手动引导角应用程序。看一下:
https://docs.angularjs.org/guide/bootstrap
在我的项目中,我只在加载了所有文件时才使用手动引导程序来运行这个角度应用程序。我定义了一个主函数,并在文档加载事件上运行这个函数。
/// <summary>
/// Bootstrap the ng-app on DOM loaded.
/// </summary>
$().ready(function () {
main();
});在主要功能方面,我初始化了角度应用程序,例如加载模块、注册服务/控制器、设置路由。
/// <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']);
}我发现了很多关于学习AngularJs的资源,相信它会有帮助的。
发布于 2015-06-30 01:13:17
您提到的示例项目有一个名为app.js的文件。这是配置所有路由的地方。这是一个配置,它根据浏览器中输入的url通知要调用哪个控制器js。例如,/simplePaging控制器是simpleCtrl,可以在simpleCtrl.js中找到它。只需遵循app.js中的路径,您就应该能够理解代码。
https://stackoverflow.com/questions/31126626
复制相似问题