【问题标题】:How can I make my component library use the app's material theme?如何让我的组件库使用应用程序的材质主题?
【发布时间】:2017-07-31 16:14:29
【问题描述】:

我正在尝试找出一种方法,让我的独立/可重用组件库在 Angular 中使用应用程序的材质主题。更具体地说,我正在尝试访问组件中的主题颜色,以便我可以根据主题是浅色还是深色来设置边框颜色。

【问题讨论】:

    标签: angular angular-material


    【解决方案1】:

    在您的组件中,您可以添加对主题样式表的引用:

    @Component({
      selector: 'your-selector',
      templateUrl: 'path/to/your/template.html',
      styleUrls: ['/path/to/the/theme/stylesheet', '...']
    })
    

    或者如果您使用 scss,只需在组件的样式表中导入主题样式表,这将允许您使用主题颜色。

    @import 'path/to/the/theme/stylesheet.scss'
    

    【讨论】:

    • 例如,如果组件库在我的node_modules 目录中,这是否也一样?我正在努力做到这一点,以便我可以npm install 这些组件并仍然使用应用程序的材料主题。应用的主题文件总是在同一个位置。
    • 是的,您只需要提供样式表的路径,相对于您的 src/ 文件夹
    猜你喜欢
    • 2021-04-18
    • 2018-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-19
    • 2018-04-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多