项目作者: Yihao-G

项目描述 :
Material Design Icons exported as ES modules
高级语言: JavaScript
项目地址: git://github.com/Yihao-G/mdi-es.git
创建时间: 2021-04-10T10:26:07Z
项目社区:https://github.com/Yihao-G/mdi-es

开源协议:Other

下载


Material Design Icons - ES Module Build

Node.js Package
npm version

A custom ES modularised build of Material Design Icons. This module contains all the
SVG path data for all icons. Each icon is contained in an individual module.

  1. npm install mdi-es

⚠ Note: This documentation assumes your Node.js supports custom package exports

This package uses "exports" in package.json, which remaps dist/*.js folder to /. Therefore, when importing
like import mdiAccount from 'mdi-es/mdiAccount', Node actual imports from mdi-es/dist/mdiAccount.js.

If the Node you are using doesn’t have custom package exports enabled, please import
like import mdiAccount from 'mdi-es/dist/mdiAccount.js'.

TypeScript

Your TypeScript may complain TS2307: Cannot find module 'mdi-es/mdiAccount' or its corresponding type declarations..
This is due to the known issue of https://github.com/microsoft/TypeScript/issues/33079 and is expected to be implemented
in 4.3.

Usage

Import

You can load icons by importing either through the main file (index.js) or each individual module.

Through the main file

Other icons will be tree-shaken if used with a JavaScript module bundler, such as webpack
or rollup.js.

  1. import { mdiAccount } from 'mdi-es'
  2. console.log(mdiAccount) // "M...Z"

Import individual module

This is useful if you are not using a JavaScript module bundler or using dynamic import, because not all icons are
imported.

  1. import mdiAccount from 'mdi-es/mdiAccount'
  2. console.log(mdiAccount) // "M...Z"

Show icon path

The imported value is a string of SVG path. It can be displayed by passing the value to the d attribute of <path>
element in an <svg> element.

  1. <svg viewBox="0 0 24 24">
  2. <path d="mdiAccount string goes here" ></path>
  3. </svg>

Here is an example of Vue component <template>:

  1. <template>
  2. <svg viewBox="0 0 24 24" class="fill-current" :style="{ width: sizeString, height: sizeString }">
  3. <path :d="iconPath" ></path>
  4. </svg>
  5. </template>

NPM @MDI Organization

Learn More