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

如果您没有在AngularJS模型中使用。(点),那么您做错了吗?

庞乐池
2023-03-14
问题内容

我记得在AngularJS的视频中看到过这句名言,说应该一直使用。(点)在您的模型中。

好吧,我试图按照这个说法说我有

   var item = {}
   item.title = "Easy Access to support";
   item.available = true;
   item.price = 31.67;

所以我认为这很有效

  {{ item.title }}
  {{ item.available }}

我使用了一个点,所以我认为这很好。

但是我有一些我认为不属于模型的属性,但也许我错了。例如,我有一个属性,可以使用ng-
disable启用或禁用按钮,我已经使用点格式输入了此属性。基本上这样输入

 $scope.disableButton = true;

我用它像

 ng-disable="disableButton"......

我是否应该将此模型作为“项目”的一部分?还是创建另一个js对象,以便我可以使用点保留此属性?

有人知道这是否可以接受,还是我应该使用.dot来做所有事情(甚至是这些简单的属性)?

谢谢


问题答案:

“模型中应始终有一个点”是指ngModel。该指令执行双向绑定。如果您双向绑定到基元(例如您的情况下为布尔值),则setter会将其设置在当前作用域上,而不是在其定义的作用域上进行设置,当您拥有大量用户时,与许多子范围的接口。
它没有引用其他指令,例如ngDisable有关此特定问题的更多详细信息,请参见此说明。

示例场景:带有的父范围$scope.foo = "bar"和带有的子范围<input type="text" data-ng- model="foo">。它将bar最初显示,但是一旦用户更改了值,foo将在 子作用域
上创建一个,绑定将读取和写入该值。父母的foo仍将保留bar。希望总结得好。

因此,ngModel出于目的,您可能必须创建一个对象来解决此类绑定问题,但是对于任何其他指令,您应该进行常规的逻辑分组。



 类似资料:
  • 问题内容: 一位同事最近问我如何深度克隆Map,我意识到我可能从未使用过clone()方法,这让我感到担忧。 您发现需要在何处克隆对象的最常见情况是什么? 问题答案: 我假设您是用Java 指的。如果是,请告知它存在一些主要问题,并且在大多数情况下,建议不要使用它。请参阅Joshua Bloch撰写的“ Effective Java”中 的第11项,以获取完整答案。我相信您可以安全地在原始类型数组

  • 问题内容: 我正在使用felixge的客户端。我没有使用ORM。 我正在用Vows进行测试,并且希望能够使用Sinon来模拟我的数据库。由于除之外我本身还没有DAL ,因此我不确定如何执行此操作。我的模型大多是带有很多吸气剂的简单CRUD。 关于如何做到这一点的任何想法? 问题答案: 使用sinon,您可以在整个模块上放置一个模拟或存根。例如,假设模块具有一个功能: ,是您期望的输入。是您期望的输

  • 问题内容: 我读过,可以使用COM / ActiveX自动执行Crystal Reports中的月度报告。我不太了解这是什么,甚至可以使用它来做什么。 我也使用Excel进行了大量工作,看起来您也使用COM / ActiveX与其进行交互。 有人可以解释它是如何工作的,也许可以提供一个简短的例子? 问题答案: 首先,您必须安装出色的pywin32模块。 它提供COM支持。您需要运行该实用程序。它位

  • 或 还有,有人能给我解释一下列表的后一个参数化吗?

  • 问题内容: 假设我熟悉使用jQuery开发客户端应用程序,但是现在我想开始使用AngularJS。您能否描述必要的范式转换?以下是一些可以帮助您确定答案的问题: 我如何以不同的方式设计和设计客户端Web应用程序?最大的区别是什么? 我应该停止做什么/使用;我应该开始做什么/使用呢? 是否有服务器端注意事项/限制? 我不希望在和之间进行详细的比较。 问题答案: 1.不要设计您的页面,然后通过DOM操

  • 我能用一个lambda表达式来完成这一切吗?