首页 文章

在React中导入TypeScript变量

提问于
浏览
0

我试图将一个fabric(样式组件)样式js组件(Dropdown)作为反应组件 .

css类名称在文件office-ui-fabric-react / lib / components / Dropdown / Dropdown.scss.d.ts中声明 . 例:

export declare const root = "root_15a7b352";

我想导入这个类名,所以我可以在样式中使用它 .

AFAIK这是TypeScript全局变量,我尝试寻找有关如何获取它的信息,但没有成功 .

2 回答

  • 0

    declare const root 语句与 const root 不同 . 它的意思是:

    在其他地方有一个名为root的变量,我只是在这里描述它 .

    换句话说,它告诉我们类型级别的东西,但它不能在运行时使用它 . 您可以通过检查TypeScript playground中生成的代码来验证它 .

    很可能它意味着从其他地方导入,或者实际上是一个全局变量因为声明文件描述了 Dropdown.scss ,所以 root 可能是生活在该文件中的CSS类 . 尝试:

    import { root } from 'office-ui-fabric-react/lib/components/Dropdown/Dropdown.scss'
    
  • 0

    Karol Majeswski's Answer在从typescript导入变量时正确 .

    但是,似乎您的目的是使用 styled-components 设置下拉列表的部分样式,而不是从scss文件中导入此变量,Dropdown组件提供可用于样式的可读类名,如 ms-Dropdown-title .

    例如 . 要设置Dropdown样式,您可以使用:

    const StyledDropdown = styled(Dropdown)`
      color: red;
    
      & .ms-Dropdown-title {
        background-color: red;
      }
    `;
    

    See Codepen example

相关问题