::ng-deep 将被弃用 - 有其他选择吗?

2024-03-09

医生说:

阴影穿透后代组合器已被弃用,并且主要浏览器和工具正在删除支持。因此,我们计划放弃对 Angular 的支持(对于 /deep/、>>> 和 ::ng-deep 的所有 3 个)。在那之前,应该首选 ::ng-deep,以获得与工具更广泛的兼容性。

由于我想升级到新版本而不更改代码,因此已弃用的方法有哪些替代方法?


经过一番搜寻之后实际笔记 https://lists.w3.org/Archives/Public/public-webapps/2015AprJun/att-0307/24-minutes.html来自委员会会议 https://www.w3.org/wiki/Webapps/WebComponentsApril2015Meeting在这个问题上,看起来还没有提出替代方案。使用::ng-deep语法确保您让 Angular 负责打破它们为您的样式所做的样式封装(对于模板中子组件中的 DOM 节点)(并且不使用浏览器本机功能,这显然使其更加面向未来)。我认为该注释只是为了让您知道,每当实际的浏览器机制到位时,他们都会计划实现它。我个人不会回避使用它。

在 CSS 中不使用该运算符的唯一方法是完全选择不让 Angular 管理组件的样式封装,方法如下:

import { ViewEncapsulation } from '@angular/core';

@Component({
    ...
    encapsulation: ViewEncapsulation.None
})

如果这样做,您的样式就会变成全局样式,因此请确保在每个样式规则前面加上您的组件,以确保它们不会泄漏到超出范围之外。例如,如果您有一个MyCustomComponent具有选择器的组件my-custom-component:

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

::ng-deep 将被弃用 - 有其他选择吗? 的相关文章

  • FakeAsync/tick (Async/whenStable) 与 detectorChanges()

    您能帮我区分这两件事吗 根据我的理解 如果你只使用 observable 你可以使用 detectorChanges 因此 您可以直接更改组件属性或监视服务调用并返回可观察的值 然后调用 detectorChanges 更改将在 html
  • Angular 5 Http拦截器刷新JWT令牌

    我已经实现了令牌保存 检索的逻辑 并且我也有刷新调用 问题是 当我在 HttpInterceptor 中拦截 403 时 同时进行的其他调用也会刷新令牌 我很乐意保留这些调用 直到我的令牌刷新为止 创建我所说的请求 信号量 Injectab
  • 原生元素聚焦功能不起作用

    我试图通过单击按钮自动聚焦在输入元素上 请参阅打字稿 ViewChild envFilter envFilter ElementRef onFilterSelect this envFilter nativeElement focus 在
  • Angular2 - 在反应表单上设置日期字段

    我有一个使用两个日期字段的组件 开始日期和结束日期 默认情况下 我禁用了结束日期字段 当他们选择开始日期时我会切换它 this transitionForm this fb group effectiveEndDate value disa
  • 如何使用深度等于 (Angular 7)

    通过 VS Code 自动导入 import deepEqual require deep equal 不起作用 错误 TS1202 定位时无法使用导入分配 ECMAScript 模块 考虑使用 import as ns from mod
  • Angular - 如何解析 event.path 内的对象

    现在这是一个很难解释的复杂问题 我会尽力解释 我有一个弹出窗口 我想从中唯一地标识单击事件是来自弹出窗口内部还是外部 我的第一个方法 我用一个包住了整个弹出框div与id 说 独特 因此 我将单击事件与主机侦听器绑定 我将为其获取事件对象
  • 如何在 Angular 2 中执行无限动画?

    基本上 我想利用 Angular 中的 web animations api polyfill 当前为 4 来对元素执行无限动画 让我们看一个基本的非角度示例 var ball document getElementById ball ba
  • 找不到“节点”的类型定义文件

    更新 Angular Webpack 和 TypeScript 后出现奇怪的错误 知道我可能会错过什么吗 当我使用 npm start 运行应用程序时 出现以下错误 at loader Cannot find type definition
  • 当选项卡索引更改时,mat-tab-group 滚动到页面顶部

    我有奇怪的行为mat tab group在角度材料中 当我更改选项卡索引时 它会将页面滚动到顶部 知道为什么吗 这是角度材料库中的一个已知错误 请参阅here https github com angular material2 issue
  • ObjectUnsubscribedError:当我在 Angx 2 中使用 ngx-progress 时出现对象取消订阅错误

    我在用ngx进度条 https www npmjs com package ngx progressbarAngular 2 应用程序中的栏 当应用程序首次加载时 它工作正常 第二次显示错误 我提到了几篇类似的文章媒体网站 https me
  • Angular 5 - 使用对象进行表单控制

    我目前正在开发一个由 Django 支持的 Angular 应用程序 该应用程序的一部分是它需要显示成员列表 成员数组看起来有点像这样 name John Smith id 3 score set name Jane Doe id 7 sc
  • Angular 2 链式 Promise 并传递拒绝

    应该是一个简单的问题 但是我找不到有关如何做到这一点的文档 像这样链接一个承诺 Making a promise no problem let promise new Promise resolve reject gt let data d
  • 在“FormGroup”中预填充输入字段 - Angular2

    我正在使用 Angular2 反应形式 一切正常 直到我想在表单中的字段之一中显示预填充的值 设想 页面上有多个按钮 每个按钮都会打开一个表单 其中的字段如下 Name Email Message 产品代码 gt 此值应根据服务中的每个项目
  • Angular 无法检测到从 Ngxs 状态发出的 Http 请求(区域相关问题)

    我正在使用 ngx progressbar 它可以很好地处理从服务 组件或解析器内部启动的 http 请求 请注意 在 http 请求期间不需要手动触发进度条 通过服务等 它是自动触发的 不幸的是 当从 NGXS State 中发出 htt
  • 如何使 Angular2 Service 单例?

    我正在尝试在我的应用程序中实现身份验证防护 IE 只有经过身份验证的用户才能访问我的应用程序的某些路由 我正在遵循给出的意见here https angular io docs ts latest guide router html 用户登
  • 在d3.js中将2D形状转换为3D,并根据ANGULAR中的值调整高度

    我正在使用 d3 js v6 创建以下 2D 图表表示的 3D 图表 这个圆圈中有多个正方形 每个正方形都根据值分配了一种颜色 值越大 正方形越暗 现在我想将其转换为 3D 形状 其中当值变高时 只有特定正方形的高度会增加 因此结果在某种程
  • 从 Angular 4 中的选择选项获取价值

    如何从 Angular 4 中的 select 选项获取值 我想将它分配给 component ts 文件中的一个新变量 我已经尝试过但没有输出任何内容 你也可以使用 ngModel 来做到这一点吗 组件 html
  • 如何在 Angular 中实现使用 google 登录

    我正在尝试在我的角度应用程序中实现谷歌登录功能 我这里用了两个包 abacritt angularx social login and angular oauth2 oidc 我创建了一个名为的自定义提供程序google authentic
  • 角度 2 中的动态 styleUrls?

    是否可以将样式表的 url 动态注入到组件中 就像是 styleUrls stylesheet1 css this additionalUrls 或者 一厢情愿并注意这只是假代码 export class MyComponent imple
  • 更改离子搜索栏的占位符和清晰图标颜色不是全局的吗?

    我有两个离子搜索栏 我只需要更改其中之一的占位符和清除图标颜色

随机推荐

  • Graphql 和往返。这只是ios应用程序的问题吗?

    我正在重新审视 graphql 我试图理解为什么节省往返对开发人员有好处 提出请求的费用这么贵吗 我有网络开发背景 让我们将标准 Rest api 与 graphql api 进行比较 我需要检索用户的个人信息及其朋友列表 传统的 Rest
  • 在 jQuery UI 中触发鼠标拖动

    使用 jQuery 1 2 x 和 jQuery UI 1 5 x 可以像这样手动触发拖动 jQuery myDiv mousedown function ev target jQuery ev target if target hasCl
  • Laravel 5 销毁所有用户会话并强制注销

    有没有办法销毁所有会话 我需要注销所有用户 想知道 astrisan 是否可以做到这一点 谢谢你 这实际上取决于您选择的会话驱动器 如果您使用文件驱动器 您可以删除storage framework sessions path 如果您使用数
  • PHP 匿名函数与 array_walk

    我尝试将 array walk 与匿名函数一起使用 但总是收到错误 Parse error syntax error unexpected T FUNCTION in on line X if empty myArray array wal
  • Chrome 和 Firefox 中的 WebSocket 在不活动一分钟后断开连接

    我发现 Chrome 和 Firefox 中的 WebSocket 在闲置一分钟后就会断开连接 根据我在网上看到的内容 我完全将责任归咎于代理或某些服务器设置或其他东西 但在 IE 或 Edge 中不会发生这种情况 看起来如果套接字在一分钟
  • 在数据库中存储长字符串好吗?

    我需要在数据库中存储长字符串 该字符串可能有 5 或 6 个句子长 您认为这是一个很好的设计策略吗 或者我应该存储该字符串的 id 然后创建与另一个包含存储该字符串的文件位置的表的关系 您能给出两者的优点和缺点吗 字符串已被预处理并存储在数
  • 具有命令行历史记录和制表符补全功能的 mit-scheme REPL

    我正在阅读SICP http mitpress mit edu sicp full text book book html我正在使用mit scheme http www gnu org software mit scheme 通过以下方式
  • WebAPI传递的post参数为null

    我正在使用 WebAPI 2 进行测试 并且创建了以下控制器方法 POST api values public string Post FromBody string value string returnValue Return valu
  • 基本的多对多左连接查询

    所以我有3张表 users 成就 Achievements unlocked 多对多 我想要一个查询返回所有可用的成就 并提及当前用户 例如 id user 123 已解锁的成就 我怎样才能做到这一点 这应该涉及左连接 但如果我添加 WHE
  • AngularJS 文件夹结构 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 如何为大型且可扩展的 AngularJS 应用程序布局文件夹结构 按类型排序 左侧是按类型组织的应用程序 对于较小的应用程序来说还不错 但即使在
  • 无法在关闭时从模态中删除数据。每次都显示相同的内容

    无法在关闭时从模态中删除数据 每次都显示相同的内容 body on hidden bs modal modal function this removeData bs modal 这个功能也不起作用 当我将数据传递到相同的模式并删除内容时
  • 十六进制颜色如何工作?

    代表CSS颜色的十六进制是什么意思 在不记住确切代码的情况下如何知道它是什么颜色 它与RGB 和CMYK 系统有什么关系吗 我想了一下FF means 255RGB 但后来我意识到 15 2 不是 255 而是 225 十六进制使用十六个不
  • 捆绑包格式无法识别、无效或不合适

    代码 8 1 语言 Objective C 我可以在 iPhone 上运行该项目 但无法在模拟器上运行 I tried 1 删除DerivedData文件夹的所有数据 2 清理项目并重新启动项目 3 删除资源文件夹 但这没有用 对于那些无法
  • PHP 中的正则表达式重复捕获组

    我正在尝试从一个带有路线的文件中获取信息 因此对于这项工作 我选择了正则表达式 但我遇到了重复信息的问题 为了做一个更好的问题 我将把我拥有的内容和我想要的内容放在一起 所以我有一个文件 Codes C Connected S Static
  • 如何在 scala 中按 Ordered 参数化 Int

    我有一个具有参数化类型的类 我想对其进行比较运算符 我认为我需要使用 Ordered 特征来实现这一点 但编译器不喜欢我使用它 假设我有以下课程 class Test T lt Ordered T def someOp t T if t l
  • 仅当在构建服务器上运行时单元测试才会失败

    为了帮助单元测试 我们已经完成了DateTime委托中的类 以便DateTime Now可以在单元测试中被覆盖 public static class SystemTime region Static Fields public stati
  • 如何检测我的 Android 应用程序中的广告拦截器?

    有什么方法可以检测广告拦截器何时在应用程序中运行 我想在我的应用程序中检测用户是否使用任何应用程序来阻止应用程序中的广告 如果是 那么我想向用户显示弹出窗口 要求他在使用应用程序时禁用广告拦截器 Android 操作系统没有提供官方方法来以
  • Typescript/babel 导入导致“_1.default 不是函数”

    我正在尝试使用https github com timmywil panzoom https github com timmywil panzoom来自使用 webpack 和 babel 编译的 typescript 项目 问题是打字稿方
  • 自定义树视图

    有没有办法自定义 winform 树视图以获得类似的东西 目的是通过父项目使用一种颜色并定义一个三角形而不是 图标来开发项目 Use TreeViewDrawMode OwnerDrawText所以缩进将由TreeView 除此之外 你应该
  • ::ng-deep 将被弃用 - 有其他选择吗?

    医生说 阴影穿透后代组合器已被弃用 并且主要浏览器和工具正在删除支持 因此 我们计划放弃对 Angular 的支持 对于 deep gt gt gt 和 ng deep 的所有 3 个 在那之前 应该首选 ng deep 以获得与工具更广泛