AngularUI:为什么模态没有作为指令实现?

2024-02-21

我在我的项目中使用 Angular-ui,我想实现一个模式窗口。库的大部分组件(http://angular-ui.github.io/bootstrap/ http://angular-ui.github.io/bootstrap/)作为指令实现(如预期)。然而,模态不是——它是作为服务实现的。这导致对控制器中视图的强烈依赖(即控制器需要知道视图使用模态窗口,但不应该是这种情况)。

我的问题是:为什么模态是作为服务实现的,而不是指令?它有什么好处吗?


The $modal指令非常灵活,通过其 API,它支持:

  • 由于控制器控制它的打开时间,因此可以在您想要的任何事件上触发。
  • 使用以下命令将数据从控制器传递到对话框中的控制器resolve option
  • 使用对话框中的任何控制器或模板。
  • 通过其接近触发控制器的对话框将数据传回result承诺。

虽然这一切都在指令中并非不可能,但我认为实际上只能通过使用大量选项或复杂的对象来实现,无论如何,这些选项或复杂的对象都必须在控制器中构造。

这不是指令的另一个原因是指令通常用于页面中特定位置的内容。模式的设计本身并不附加到页面中的任何元素。

我建议尝试为指令设计一个 API,该指令提供与以下指令相同的功能:$modal,我怀疑它会揭示使用服务总体上更清晰,而且可能更灵活。

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

AngularUI:为什么模态没有作为指令实现? 的相关文章

  • 如何使用 Angular 创建 n 个可打印页面?

    嗯 我搜索了一下 没有找到类似的东西 我想知道如何使用 Angular 创建可打印内容 跳转到页面末尾并打印更多内容 如何强制内容始终适合特定尺寸 例如 PDF 我需要 Angular 来执行此操作吗 如果不是 HTML 我可以迭代 PDF
  • 从子 ng-repeat 访问父 ng-repeat 的索引

    我想使用父列表 foos 的索引作为子列表 foos bars 中函数调用的参数 我发现有人建议使用 parent index 的帖子 但是 index不是以下的财产 parent 如何访问父级的索引ng repeat div div di
  • 如何将函数处理程序从控制器传递到 AngularJs 中的指令隔离范围?

    我在控制器中有以下功能 angular module app controller BodyController function this click function message alert message 我想将此函数传递到指令的
  • Angular - 过滤器从数组中删除空白字符串

    我有一个数组对象 数组可以包含空格 我如何创建 Angular 过滤器来删除空格以确定数组的长度 scope myData 1 1 4 4 N 4 6 8 2 2 4 6 0 6 5 4 2 8 2 3 3 F D 3 5
  • AngularJS limitTo 按最后 2 条记录

    可以结合AngularJS吗filter https docs angularjs org api ng filter filter order https docs angularjs org api ng filter orderBy
  • Internet Explorer Selenium Protractor e2e 测试

    我想在我们的 CI 构建过程中添加一些 e2e 测试 我已经针对 chrome firefox 添加了它们 作为最简单的 但我真的很想为几个 IE 版本做这件事 如何在 linux mac 上的构建过程中注入它 我发现这样的文章 http
  • Protractor addMockModule 附加参数不起作用?

    这看起来非常非常简单 但我不明白为什么这个简单的代码不起作用 我正在添加一个模拟模块来在 Angular E2E 测试中模拟我的 API 后端 我正在使用量角器 1 6 0 我需要将附加参数传递给模拟模块 根据 Protractor 文档
  • AngularJS 中“href”和“ng-href”的区别

    我都用过href and ng href我看不出它们之间的区别 为什么 Angular 有ng href属性 什么时候应该使用它 从文档中 https docs angularjs org api ng directive ngHref 使
  • ui-sref 和变量状态参数名称

    我想呈现一个链接 例如 a 其中州名myState和钥匙myKey是变量 有办法做到这一点吗 我发现自己处于同样的情况 我也无法完成这一点 尝试使用 ng click 移动代码 并在 ng click 函数内部使用 stage go htt
  • AngularJS templateUrl 与 template - 隔离范围

    我有以下指令 offerListSorters directive offersSorter myState templateCache function myState templateCache return scope control
  • 如何在 AngularJS 中滚动到页面顶部?

    我想在使用 angularjs 获得 ajax 调用响应后滚动到页面顶部 基本上 我在页面顶部显示警报消息 并且希望在收到 ajax 响应时将警报消息集中显示 Thanks 您可以使用 window scrollTo x y where x
  • Angular 指令,属性更新时不调用链接

    在以下示例中 http plnkr co edit OZjg6sUgl35GIriaabQg p preview http plnkr co edit OZjg6sUgl35GIriaabQg p preview 我有 2 个指令 show
  • 将 Angularjs 动态绑定到新创建的 html 元素

    我有一个带有多个选项卡的选项卡页面 一旦单击调用服务即可返回一些数据 其中一些数据返回 html 表单并且非常随机 我想收集输入的这些值并通过服务将数据发送回服务器 我遇到的问题是我无法从我动态创建的 html 中的输入元素获取数据 我创建
  • AngularJS 和 PouchDB 服务的单元测试

    我正在尝试对我的个人 Angular 工厂进行单元测试 但很难尝试正确模拟和注入 PouchDB 对象 我的工厂代码目前如下 factory Track function var db new PouchDB tracks var reso
  • 使用 AngularJS 制作 Windows Phone 全景图

    我正在尝试在 AngularJS 应用程序中复制 Windows Phone Ui 这是一个example http www expertreviews co uk gallery features 1295629 designing wi
  • Angular 完成渲染后运行 jQuery

    我正在尝试使用 angularjs 中的 json 对象填充个人资料页面 我正在为此使用指令 我有一个配置文件指令 其中包含配置文件部分指令作为子项 配置文件部分具有作为子级的配置文件子部分指令 我需要在 Angular 开始编译之前和 A
  • 使用 name 属性的动态指令控制器

    我正在尝试使用动态控制器实现指令 以便我可以根据某些条件绑定控制器 就像托德 莫托 Todd Motto 所展示的那样here https toddmotto com dynamic controllers in directives wi
  • $scope.$digest 之后立即触发事件

    在我的 AngularJS 应用程序中 有几个点我想等待 scope被处理到 DOM 中 然后在其上运行一些代码 就像 jQueryfadeIn 例如 有没有办法监听某种 digestComplete 消息 我当前的方法是 设置后立即 sc
  • 从 url 角度加载模板并在 div 内编译

    由于我是 Angular JS 的新手 我想知道如何加载外部模板并将其与一些数据一起编译到目标中div 例如我有这个模板
  • 使用 eclipse IDE 配置 angularjs

    我想开始使用 AngularJs 和 Java Spring 进行开发 我使用 Eclipse 作为 IDE 我想配置我的 Eclipse 以使这些框架无缝工作 我知道我可能要求太多 但相信我 我已经做了很多研究 你们是我最后的选择 任何帮

随机推荐

  • 更改 UIImagePicker 的纵横比

    所以我尝试在我的 iOS 应用程序中制作一个自定义相机 我想让相机像快照一样全屏显示 但我找不到任何地方可以帮助我将宽高比从 4 3 默认 更改为 16 9 iPhone 5 和 5s 4 英寸屏幕 有人能指出我正确的方向吗 这里有点无耻的
  • 如何获取夏令时的开始和结束日期?

    我正在尝试获取 Android 中夏令时的转换日期 这是特定时区夏令时开始和结束的日期 我怎么做 无法直接执行此操作 但您可以使用 TimeZone isDaylightTime Date 如下所示 TimeZone tz TimeZone
  • AOL 的开发者 API 密钥问题

    我正在使用 AOL 登录创建一个新应用程序 为此 我需要开发人员 api 密钥 我获取了 Facebook twitter 的 api 密钥 但对于 aol com 当我打开 dev aol com 时 它总是重定向到 www aol co
  • 通过 ajax 刷新数据时覆盖表单“重置”行为

    我依靠表单的 重置 行为来取消编辑 我面临的问题是 一旦发布数据通过ajax更新 重置仍然会恢复到最初随页面加载的数据 所以基本上我需要做的是 重置 重置 功能 合理 尝试这个 yourForm bind reset function re
  • 如何比较两个具有非连续顺序的随机数的文件?

    有 2 个名为 compare 1 txt 和 compare2 txt 的文件 其中包含非连续顺序的随机数 猫比较1 txt 57 11 13 3 889 014 91 猫比较2 txt 003 889 13 14 57 12 90 Ai
  • 如何在不使用边框的情况下更改 a 标签的下划线粗细?

    我经常对按钮使用 a 标签 因此它们有一个填充 使它们像按钮一样 如何更改文本装饰下划线的粗细 人们经常建议为此使用边框底部 但是 底部边框不是下划线 有些字母甚至延伸到下划线以下 下划线比某物下面的线复杂得多 正如所解释的 我已经使用了相
  • 如何将 .NET 库移动到子目录?

    我想将我的应用程序使用的所有库 dll 放入一个子目录 假设名为 lib 如何指示程序集加载器在该特定目录 这是主程序集所在的目录的子目录 中查找引用的程序集 我认为应该通过 app config 中的一些设置来完成 对吗 探测路径 htt
  • 哈希表中关键内容的最佳实践

    最好的查找结构是HashTable 它提供持续的访问一般 最坏情况下呈线性 这取决于哈希函数 好的 我的问题如下 假设一个良好的实施HashTable e g HashMap关于映射中传递的键是否有最佳实践 我的意思是建议键必须是不可变的对
  • 为什么这个从未来列表到未来列表的转换能够编译并起作用?

    免责声明 下面的代码片段与正在进行的 Coursera 课程之一相关 我们假设它只是出于学习目的而发布 不应用于作为家庭作业的解决方案提交 正如下面的评论所述 我们需要将 Future 列表转换为列表的单个 Future 更重要的是 如果至
  • 如果条件唯一,MySQL 的非重复计数

    我正在尝试构建一个查询 告诉我给定数据集中有多少个不同的女性和男性 该人通过号码 电话 来识别 同一个 tel 可以出现多次 但该 tel 的性别只能计算一次 7136609221 男7136609222 男7136609223 女7136
  • 具有多个组的导航视图根据条件隐藏和显示组

    I have NavigationView具有多个组 基于某些条件我需要隐藏和显示组 我怎样才能实现这个目标 我的样品NavigationView menu menu menu
  • 我该如何修改这个SQL语句呢?

    我的 SQL Server 视图 SELECT geo HyperLinks CatID geo Tags Tag geo HyperLinks HyperLinksID FROM geo HyperLinks LEFT OUTER JOI
  • 快速 cookie 返回未定义

    我试图在express js 上设置cookie 但它返回未定义 我搜索了很多网页并把express cookieParser above app use app router 但它仍然无法返回正确的值 app js app configu
  • 平滑画布动画

    我正在尝试学习如何使用 HTML5 的画布创建流畅的 JavaScript 动画 由于某种原因 动画并不流畅 而是有点 溅射 你可以看到我构建的框架这个jsFiddle http jsfiddle net 3TAVu 目前仅使用 Webki
  • C++ 模板“延迟实例化”

    C 模板中的 延迟实例化 是什么意思 延迟实例化是指直到第一次使用相应实体时才实例化模板 例如 您有一个模板化函数 template
  • javascript创建多维数组语法[重复]

    这个问题在这里已经有答案了 今天我听说可以使用以下语法在 js 中创建多维数组 var a new Array 3 3 a 2 2 2 alert a 2 2 然而这在歌剧中不起作用 我有什么地方说错了吗 是的 你有地方错了 var a n
  • git 存储库在 Linux 中从 jenkins 连接时出现 403 错误

    嗨 我只想将我的项目从 github 配置到 jenkins 来生成 build gradle 文件 我收到以下错误 Failed to connect to repository Command usr bin git ls remote
  • 如何在IPython中自动设置默认路径

    我使用 WingIDE 进行开发 使用 Ipython 运行脚本 我在几个方面面临一些不便 每当我更新代码时 我都必须重新加载模块才能在 IPython 中更新它 为了解决我遵循的问题绳文杉 https stackoverflow com
  • 如何从 jenkins 构建 Visual Studio 安装程序项目(.vdproj)以生成 .exe 和 .msi 文件?

    我有一个 Visual Studio 安装程序项目 vdproj 我想从 jenkins 构建它 有人可以为我提供解决方案吗 我尝试使用 msbuild 但它不适合我 然后我在批处理文件中尝试了以下操作 devenv exe pathToP
  • AngularUI:为什么模态没有作为指令实现?

    我在我的项目中使用 Angular ui 我想实现一个模式窗口 库的大部分组件 http angular ui github io bootstrap http angular ui github io bootstrap 作为指令实现 如