3

我正在尝试找到解决方案,如何将 CSS 变量的 polyfill/fallback 集成到使用最新版本的 Angular(7.0.1)和 Angular Material(7.0.2)的项目中。问题是ng eject此时已禁用,因此,我无法编辑使用PostCSS的Autoprefixer的配置,该插件已经存在为旧版浏览器提供回退的插件。

我发现了什么:

CSS Vars Ponyfill

  • <styles>用于查看内联样式或HTML 标记的JS 库,<link>但要使用它,我必须启用watch此插件的选项,这意味着,监视 DOM 中的任何更改(我不喜欢这个解决方案)

下一个 CSS

  • PostCSS插件(在 Angular 构建中用作Autoprefixer)。我认为,最好的解决方案,但目前我无法编辑构建/webpack 配置。

我可以做什么:

  • 当然,我可以创建自己的@mixinin.scss来处理属性,值作为参数,然后使用CSS 变量返回回退 + 值,但我不确定未来是否会出现问题,所以,我会更高兴已经存在的解决方案(例如CSSNext)。

请问您知道如何实现这个目标吗?谢谢你。

问候,

醒目的..

4

1 回答 1

3

css-vars-ponyfill 的作者在这里。

您不必启用将watchponyfill 与 Angular 应用程序一起使用的选项。如果您愿意,您可以随时手动调用它(在启动主题更改、路由更改、组件挂载等之后)。watch 选项只是一个很好的“设置它并忘记它”选项,大多数人都喜欢它的简单性。

ponyfill 的 2.x 版本最近发布了,它支持增量更新,因此也提供了比 1.x 更好的性能提升。

希望这可以帮助。如果您有任何问题或想进一步讨论,请随时在 GitHub 上提出问题。

于 2019-04-26T16:25:18.017 回答