当前位置: 首页 > 面试题库 >

页面上有多个ng-app指令

景正文
2023-03-14
问题内容

我希望能够在一页上使用多个ng-app =“
{angular.module}”指令。我想这样做是为了使我的应用程序的模块更加模块化。我认为,如果我可以创建角度模块并将其中几个模块插入一个文档,则可以将这些模块轻松地插入其他项目。

我见过有人说您只能在页面上使用一个ng-app指令…是真的吗?说“每个视图一个ng-app指令”是否最准确?

我希望不是这样,或者如果情况是,仍然存在实现高度抽象模块化的最佳方法。

这是我的模块/应用程序及其控制器…

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


var controllers = {};

controllers.SearchList = function ($scope){

    $scope.coworkers = [
            {name: 'Joe Bob', city: 'Ukrainia'},
            {name: 'Adam Blobnovski', city: 'Logan' },
            {name: 'Carlos Sanchez', city: 'Deerbushle'},   
            {name: 'Martin Kellerweller', city: 'Uptown'},
            {name: 'John Doe',  city: 'New York City'}
        ];
};

searchModj.controller(controllers);



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



controllers.SomeFruit = function ($scope) {

    $scope.fruits = ['apple', 'banana', 'pear'];

};

fruitModj.controller(controllers);

好的,现在这是我的标记的相关部分…

<div ng-app="searchModule">

    <div ng-controller="SearchList">

        Name: 
        <br/>
        <input type="text" ng-model="name" /> 
        <br/>
        <ul>
            <li ng-repeat="coworker in coworkers | filter:name">{{ coworker.name }} - {{ coworker.city }}</li>
        </ul>

        <p>You are searching for <em>{{ name }}</em></p>


    </div>


</div>

<div ng-app="fruiter">
    <div ng-controller="SomeFruit">

        <ul>
            <li ng-repeat="fruit in fruits">{{ fruits }}</li>
        </ul>

    </div>

</div>

我认为,因为它首先出现在文档中,所以我的“
searchModule”应用有效,而第二个应用无效。当我注释掉第一个应用程序时,第二个工作。因此,看来我在证实我最不幸的猜疑。无论如何…如果是这种情况,那么我可以记住的最佳方法是使我的项目的功能尽可能模块化吗?


问题答案:

您只希望ng-app在页面上放置一个,但是您可以将其他模块作为主ng-app模块的依赖项插入。

var app=angular.module('myNgAppName', ['searchModule']);

这将公开您所拥有的所有指令,控制器等 'searchModule'



 类似资料:
  • 问题内容: 我刚刚开始学习Angular JS并创建了一些基本示例,但是我仍然遇到以下问题。 我已经创建了2个模块和2个控制器。 每个控制器都有关联的视图。第一个视图渲染良好,但第二个视图未渲染。没有错误。 http://jsfiddle.net/ep2sQ/ 请帮我解决这个问题。 也有可能在View中添加控制台以检查从Controller传递了哪些值。 例如在下面的div中,我们可以添加cons

  • 我用缩略图创建了一个小图像库。每次我将鼠标悬停在给定的颜色上,主窗口中的图像就会变成具有这种颜色的图像(实际上,我希望彩色图像被替换为我放在那里的图像的不同颜色变化)。 我想做的是在我的页面上放不止一个这样的图库。问题是,如果我添加另一个库,所有内容都会重复。我希望避免为每个库创建css和jquery代码。有什么办法可以做到这一点吗? 此外,最初我希望大图像仅在单击彩色缩略图时显示,而不是悬停在上

  • 问题内容: 在某一时刻(后12‘40” ),扬声器指出的属性和是内部或多于或少于标签等都是和。但是发言者说,HTML代码将通过不同的验证验证,这取决于哪个属性用过的。 您能解释一下前缀和前缀这两种方式之间的区别吗? 问题答案: 好问题。区别很简单-两者之间绝对没有区别,只是某些HTML5验证程序将对像属性抛出错误,但对于诸如前缀的任何内容都不会引发错误。 因此,要回答您的问题,请使用是否希望验证H

  • 问题内容: 仅当我删除指令之一即ng-app-demo1和模型时,我才获得输出。为什么我不能同时工作两个ng-app。我是Angular JS的新手,并建立了自己的基础知识。如果一次运行一个指令,我将获得所需的输出。因此,在此示例中,如果我删除了演示ng- app,脚本和控制器,则会得到所需的输出。如果删除demo1 ng-app脚本和控制器,则第一部分工作正常。如何使两个指令同时工作? 输出是

  • 我是ExtJS新手。 我在同一页上有两个网格。第一个网格有3列。只有第二个。问题是,当渲染第二个网格时,它会覆盖第一个网格的属性。 例如,当我试图编辑第一个网格中的行时,它需要第二个网格中的行的宽度。

  • 问题内容: 是否可以实现这样的代码:- 我有两个数组,我想在单行中显示它们。 PS:我不要求语法。我正在寻找实现这一目标的逻辑 谢谢 就像:-“ http://jsfiddle.net/6ob5bkcx/1/ ” 问题答案: 您应该在控制器中而不是在视图中执行此操作。将dataValues映射到键/值对对象,并使用索引引用values数组。假定每个数据键都有一个对应的值键。 控制器: 视图: