【问题标题】:What exactly is app.js in Angular?Angular 中的 app.js 到底是什么?
【发布时间】:2016-06-04 01:30:26
【问题描述】:

我正在为一份新工作学习 Angular(目前为 1,稍后我们将过渡到 2)。我有 ASP MVC 的经验,但没有客户端 MVC 的经验,所以这对我来说从一开始就是全新的。大多数教程使用这个文件“app.js”或类似的东西,我猜它用Angular注册了各种东西,比如你的网络应用程序的名称等。这很好,但我想知道具体目的是什么这个文件?

例如,我目前正在阅读本教程,这是我们为路由和控制器所做的代码:

var AngularWebApp = angular.module('AngularWebApp', []);

AngularWebApp.controller
    ('LandingPageController', LandingPageController);

var configFunction = function ($routeProvider) {
    $routeProvider.
        when('/routeOne', {
            templateUrl: 'routesDemo/one'
        })
        .when('/routeTwo', {
            templateUrl: 'routesDemo/two'
        })
        .when('/routeThree', {
            templateUrl: 'routesDemo/three'
        });
}
configFunction.$inject = ['$routeProvider'];

我问的原因是我还没有在任何地方阅读过关于这个文件实际用途的单一解释,看起来我们只是在这里转储了一堆配置设置,所以这种类似ASP MVC web.config 文件?我只是想要一个明确的答案,而不是仅仅猜测它。

【问题讨论】:

  • Javascript 完全不依赖于文件名,因为某些应用程序需要某些文件(例如 web.xml)。例如,您可以将所有 Javascript 连接到一个名为 Everything.js 的文件中,它的工作原理是一样的。
  • 对,但我的意思是这个文件的具体意义是什么?我的意思是 app.js 只是作为文件的通用名称,我知道不必那么具体。

标签: javascript angularjs model-view-controller


【解决方案1】:

app.js(我使用main.js)只是一个通用名称,用于 Angular 项目的根引导文件。虽然您可以将所有 js 文件合并为生产版本,但在开发时,文件分离显然是一件好事。

在开发 Angular 项目时,您会创建一堆执行各种操作的模块,但您需要一个用于您的应用的主模块,用于在您的 html 中与 ng-app 属性一起使用:https://docs.angularjs.org/api/ng/directive/ngApp

此模块设置依赖关系,通常包含应用程序配置,例如路由。虽然您不必以这种方式构建您的应用程序,但归根结底它只是一个命名约定。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-29
    • 2012-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-06
    • 2013-05-05
    相关资源
    最近更新 更多