require: 'ngModel' 是什么意思?

2023-11-22

这是我的指令的 HTML:

<textarea data-modal="modal" data-mydir ng:model="abc"></textarea>

在我的指令中我有这样的:

return {
  require: 'ngModel',
  replace: true,
  scope: {
    modal: '=modal',
    ngModel: '=',
    pid: '=pid'
  }
}

有人能告诉我,require的意义是什么:ngModel?我在许多不同的指令中看到了这一点。我可以称之为数据模式吗?

我很困惑,因为当我将其更改为data-modal我收到一条来自 Angular 的消息说

Controller 'ngModel', required by directive 'textarea', can't be found!

The require指令为您提供了您命名为第四个参数的指令的控制器link功能。 (您可以使用^在父元素上查找控制器;?使它成为可选的。)所以require: 'ngModel'为您提供控制器ngModel指示,这是一个ngModelController.

指令控制器可以编写为提供其他指令可以使用的 API;和ngModelController,您可以访问内置的特殊功能ngModel,包括获取和设置值。考虑以下示例:

<input color-picker ng-model="project.color">
app.directive('colorPicker', function() {
  return {
    require: 'ngModel',
    link: function(scope, element, attrs, ngModel) {
      element.colorPicker({
        // initialize the color to the color on the scope
        pickerDefault: scope.color,
        // update the ngModel whenever we pick a new color
        onColorChange: function(id, newValue) {
          scope.$apply(function() {
            ngModel.$setViewValue(newValue);
          });
        }
      });

      // update the color picker whenever the value on the scope changes
      ngModel.$render = function() {
        element.val(ngModel.$modelValue);
        element.change();                
      };
    }
  }
});

该指令使用ngModel控制器从颜色选择器获取和设置颜色值。请参阅这个 JSFiddle 示例:http://jsfiddle.net/BinaryMuse/AnMhx/

如果您正在使用require: 'ngModel',你可能不应该also正在使用ngModel: '='在你的隔离范围内;这ngModelController为您提供更改该值所需的所有访问权限。

底部的例子AngularJS 主页也使用此功能(除了使用自定义控制器,而不是ngModel).


至于指令的大小写,例如,ngModel vs ng-model vs data-ng-model:虽然 Angular 支持在 DOM 上使用多种形式,但当您通过名称引用指令时(例如,创建指令或使用require),您始终使用名称的小驼峰形式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

require: 'ngModel' 是什么意思? 的相关文章

  • ng-href 中的 AngularJs if 语句

    我有一些动态创建的元素 每个元素都有不同的 ng href 我想根据某些元素给出不同的链接 当我尝试在 ng href 中编写函数时 它会将页面发送到 url 中的函数 因此它不起作用 我尝试做这样的事情 a a 我应该使用哪种方法来创建具
  • NG 重复后运行指令

    因此 我希望尽可能将我的插件库移至 Angular 以保持一致性 我遇到的问题是在其子级的任何指令运行后获取要运行的指令 只是为了澄清一点 这里的目标是让我们的集成商 仅限 CSS HTML 团队成员 轻松地通过使用功能标记来向项目添加动态
  • 在 AngularJS 中从 Firebase 实时更新信息

    我使用 Angular JS 从 Firebase 制作了一个显示信息的应用程序 目前 刷新页面后信息会更新 但我想实时更新我的 信息 这是我的角度代码 var root angular module root services fireb
  • 无法在简单的 Yeoman Angular 上使用 grunt

    尝试使用本指南中的步骤通过 Yeoman 启动一个简单的角度应用程序http www sitepoint com kickstart your angularjs development with yeoman grunt and bowe
  • 更新 Angularjs 和 Momentjs 中的“时间之前”值

    原文 我有一个用 ng repeat 生成的表 其中包含数百个条目 其中包含几个不同的 unix 时间戳 我使用 moment js 让它们显示为 19 分钟前 或无论多久之前 例如 我如何每五分钟更新一次 而不必刷新整个表 这需要几秒钟并
  • 告诉 Angular Js 忽略特定路由

    我已经在 Angular 中设置了路由 一切正常 locationProvider html5Mode true routeProvider when templateUrl Home Index when User templateUrl
  • 将 jquery Ui.ressized() 与 AngularJs 一起使用

    我的模板之一中有一个 DOM 元素 我想使用 jqueryUi 调整其大小 总而言之 我有一个 div 我的模板中名为 test 的元素 除此之外 我还尝试添加脚本来实际在多个位置调整大小 但我已经完全扭转了局面 我一度认为指令可能是正确的
  • 使用箭头键盘而不是鼠标时,ng-options 模型未更新

    我创建了js小提琴 Fiddle http jsfiddle net reptildarat Z4AN2 3 我创建了一个包含一些 ng options 的表单 当您使用按钮而不是鼠标时 它会出现奇怪的行为 只需单击文本框并按 tab 您可
  • 如何在 Angular js 中创建动态工厂?

    在我的项目中 我必须在 Angular js 中创建动态工厂 其动态工厂名称如下 function createDynamicFactory modId return myModule factory modId existingServi
  • 如何在装有 Chrome 的 MAC 上使用量角器进行复制和粘贴?

    如何在装有 Chrome 的 MAC 上使用量角器进行复制和粘贴 newInput sendKeys protractor Key chord browser controlKey a newInput sendKeys protracto
  • 使用 $http 拦截器取消请求?

    我想弄清楚是否可以使用 http拦截器在请求发生之前取消请求 有一个按钮可以触发请求 但如果用户双击它 我不希望相同的请求被触发两次 现在 我意识到有几种方法可以解决这个问题 并且我们已经有了一个可行的解决方案 我们将其包装起来 http在
  • 手风琴内的 ui bootstrap datepicker 不可见

    我正在尝试在手风琴内制作一个带有日期选择器的模块 问题是日期选择器弹出框在手风琴上不可见 这是一个显示问题的笨蛋 http plnkr co edit jBqU0LXQFcUuzQLency2 p preview http plnkr co
  • 为什么 jQuery 的 Promise 有 did(),而 Mozilla 记录的 Javascript 的 Promise 却没有?如果我想在 JS 中有一个 did() 该怎么办?

    Mozilla 的 JavaScript 文档的 Promise 之间有什么区别 请参阅API page https developer mozilla org en US docs Web JavaScript Reference Glo
  • jquery metisMenu 无法在 ng-include 内工作

    我想用ng 包含渲染侧边栏template http startbootstrap com templates sb admin 2 模板要求jQuery metisMenu 插件对于下拉菜单 Issue 仅插件works当我加载以下脚本时
  • Angularjs 中的动态表单名称属性

    当动态创建 inputName 时 人们将如何使用 formName inputName valid
  • AngularJs:显示来自 git 或 Bower 的版本号

    我创建了一个 Angular 应用程序 我想在屏幕上显示应用程序的当前版本号 目前我已将其实现为常量 application constant constants VERSION 1 1 2 但这需要我在每个新版本上更新常量 我使用 Bow
  • 使用 slice 函数对 JSON 对象进行切片

    我想对 JSON 数组进行切片 但出现以下错误 对象 没有方法 切片 以下是我的代码 scope getPagedDataAsync function pageSize page searchText setTimeout function
  • 更改 Angular 模型以更新 Kendo

    我一直在一个项目中使用 Angular 最近才发现 Kendo Angular 项目位于http kendo labs github io angular kendo http kendo labs github io angular ke
  • AngularJS Youtube 播放器嵌入非常大的播放列表

    我目前正在构建一个 AngularJS 应用程序 我知道它有点过时 但我对它很有信心 我的应用程序需要嵌入一个 YouTube 播放器 其中包含一个非常大的播放列表 大约 1500 个项目 但我无法对其进行编码 以便它实际上可以嵌入超过 2
  • 如何在 ionic 应用程序中使用 socket.io

    我正在使用 ionic 创建一个应用程序cordova and angular 我必须使用 IP 地址和端口号发出请求 到插座 我读过有关 socket io 的内容 我对如何安装感到困惑套接字 io以及如何与 Angular JS 和 N

随机推荐

  • 连接具有相同 id 的 pandas DataFrame 行

    假设我有一个 pandas DataFrame 例如 A B id 0 1 1 0 1 2 1 0 2 3 2 1 3 0 2 1 假设我想合并具有相同 id 的行 以便将行中的其他元素放在一个列表中 这样上面的数据框将变为 A B id
  • AngularJS 在两个选择列表之间移动项目

    我正在尝试使用下面的代码在两个选择列表之间移动项目 但是项目没有从 availableClients 列表移动到 selectedClients 列表 所以有人可以检查下面的代码并让我知道我在这里缺少什么吗 谢谢 div div div d
  • 在同一服务器上运行多个 Django Celery 网站

    我使用 apache2 虚拟服务器在同一服务器上运行多个 Django apache wsgi 网站 我想使用 celery 但是如果我为多个网站启动 celeryd 所有网站都将使用我启动的最后一个 celeryd 实例的配置 日志 数据
  • 为什么引发 NSException 不会导致我的应用程序崩溃?

    问题 我正在编写一个 Cocoa 应用程序 我想引发异常 从而导致应用程序崩溃 我的应用程序委托中有以下几行 NSException raise NSInternalInconsistencyException format This sh
  • Google 翻译 API v2 - (403) 访问未配置

    我在通过 Google 控制台 API 使用 Google 翻译时遇到问题 当我从本地计算机运行测试时 它运行得很好 但是当我尝试在远程测试虚拟服务器上运行它时 它返回上面的 403 我在控制台 API 访问中通过服务器密钥使用简单 API
  • prolog,在元组列表中查找列表元素

    我正在尝试用 Prolog 解决一个新程序 但我被卡住了 不知道如何继续 我必须做一个有 3 个参数的谓词 第一个是元素列表 第二个是元素列表是元组列表 如果元组的第一个元素与第一个参数列表的元素匹配 则第三个必须是返回的包含元组的第二个元
  • __scrt_common_main_seh 是什么/在哪里?

    我的程序中的第三方库正在尝试调用 scrt common main seh通过微软库msvcrt lib 但由某些未知库定义 因此会出现链接器错误 我不知道这个函数应该做什么或者它是在哪里定义的 我在网上查找了这个函数 但除了链接器错误的一
  • 突出显示 ggplot2 中感兴趣的区域

    在普通绘图中 可以使用polygon调用panel first论证plot突出显示背景区域 是否可以做同样的事情ggplot2 可以在保留网格线的同时完成吗 eg plot hp and wt for mtcars data highlig
  • JavaFX:循环之间的旋转动画延迟

    我使用以下代码为基于 RotatedTranstion 的 ImageView 创建了动画 ImageView icon ImageCache getImage refresh png RotateTransition rotateTran
  • 订阅 Angular 2 HTML 元素中的可观察对象

    我有一个可观察的生产Users有一个isLoading属性 这样就可以产生预期的结果 user async isLoading 我希望能够使用这个isLoadingHTML 属性中的属性 如下所示
  • 比 <__main__.MyClass 实例位于 0x1624710> 更漂亮的东西

    这是我的课程 尽可能简单 class MyClass def init self id self id id def str self return MyClass d self id 当我打印 MyClass 的对象时 我得到这个漂亮的字
  • 如何使用 javascript 或 jquery 从字符串中提取 html 标签的内容? [复制]

    这个问题在这里已经有答案了 也许这是非常基本的 但我很困惑 我有一个简单的 html 页面 其中包含许多部分 div 我有一个包含 javascript 中的 html 标签的字符串 代码如下
  • 如何在Windows中编写Unix行尾字符?

    如何使用 Python 在 Windows 上 写入文件并使用 Unix 行尾字符 例如做时 f open file txt w f write hello n f close Python自动替换 n with r n 现代方式 使用 n
  • Celery 任务可以在重启后继续存在吗?

    我需要构建一个处理两种类型任务的系统 一种类型可以创建更多其自身或另一种类型的任务 工作人员数量很少 2 3 并且只有一名主机 最重要的要求是系统应该优雅地处理重新启动 即重新启动时 正在进行的任务应该从头开始 并且工作人员应该选择重新启动
  • 在 XAML 中使用矩形形状作为剪辑

    有没有办法可以使用普通的矩形 形状 作为 XAML 中另一个对象的剪辑的一部分 看起来我应该能够做到 但解决方案却让我困惑
  • 在pyspark中读取Excel(.xlsx)文件

    我正在尝试从 PySpark 中的本地路径读取 xlsx 文件 我写了下面的代码 from pyspark shell import sqlContext from pyspark sql import SparkSession spark
  • 无法附加或安装卷:等待条件超时

    我本地集群中的一个 pod 无法启动 因为我得到Unable to attach or mount volumes unmounted volumes nats data volume unattached volumes nats dat
  • GWT 2.1 编辑器框架

    我正在寻找一些有关如何使用的文档或示例GWT 2 1 编辑器框架 谷歌的文档呃 有点缺乏 从有限的可用文档中 我了解到编辑器 理论上 允许您更轻松地将 GUI 元素绑定到数据模型 这将减轻将数据复制到 TextArea ListBox Ch
  • 新升级的声纳不显示项目或用户

    您好 我遇到的问题是从 5 1 2 gt 5 6 gt 6 4 升级后 我相信我遵循了记录的升级路径 该系统在 5 1 2 和 5 6 上运行良好 但现在在 6 4 上 加载第一件事的初始项目页面是空的 上面写着 一旦你分析了一些项目 它们
  • require: 'ngModel' 是什么意思?

    这是我的指令的 HTML