An open API service indexing awesome lists of open source software.

https://github.com/h-ikeda/fuse-box-svgstore-plugin

FuseBox plugin that allows you to handling SVG files with svgstore.
https://github.com/h-ikeda/fuse-box-svgstore-plugin

Last synced: 4 months ago
JSON representation

FuseBox plugin that allows you to handling SVG files with svgstore.

Awesome Lists containing this project

README

        

[![CircleCI](https://circleci.com/gh/h-ikeda/fuse-box-svgstore-plugin.svg?style=svg)](https://circleci.com/gh/h-ikeda/fuse-box-svgstore-plugin)
# SVGStore Plugin for FuseBox
This [FuseBox](https://fuse-box.org) plugin allows you to handling SVG files with [svgstore](https://github.com/svgstore/svgstore). It exports SVG texts those are wraped with `` elements and path to them. Useful for structuring SVG sprites.

## Install
```
npm i --save-dev fuse-box-svgstore-plugin
```
or
```
yarn add --dev fuse-box-svgstore-plugin
```

## Usage
1. Configure your `fuse.js` file like below.
```js
const { FuseBox } = require('fuse-box');
const { SVGStorePlugin } = require('fuse-box-svgstore-plugin');

const fuse = FuseBox.init({
//...

plugins: [SVGStorePlugin()],

//...
});

// ...
```
2. Import `svg` and `path` from your SVG files.
```js
import { svg, path } from './path/to/svgfile.svg';

console.log(svg);
// ...
console.log(path);
// #...id_for_sprite...
```
3. Inject SVG element to the DOM tree. For example,
```js
const e = document.createElement('div');
e.innerHTML = svg;
e.firstElementChild.style.display = 'none';
document.body.appendChild(e.firstElementChild);
```
4. Use SVG symbols in everywhere you need with `` tag.
```html








```
```js
const target = document.body.querySelector('svg.icon');
target.innerHTML = ``;
```
## Options
No options available now.