File tree Expand file tree Collapse file tree 2 files changed +43
-9
lines changed Expand file tree Collapse file tree 2 files changed +43
-9
lines changed Original file line number Diff line number Diff line change 11# @fireworks-js/svelte
22
33> https://github.com/crashmax-dev/fireworks-js
4+
5+ ## Installation
6+
7+ ``` sh
8+ npm install @fireworks-js/svelte
9+ ```
10+
11+ ## Usage
12+
13+ #### [ ` fireworks-js ` ] ( https://github.com/crashmax-dev/fireworks-js/tree/master/examples/with-svelte )
14+
15+ ``` svelte
16+ <script lang="ts">
17+ import { Fireworks } from '@fireworks-js/svelte'
18+ import type { FireworksOptions } from '@fireworks-js/svelte'
19+
20+ let fw: Fireworks
21+ let options: FireworksOptions = {
22+ opacity: 0.5
23+ }
24+
25+ function toggleFireworks() {
26+ const fireworks = fw.fireworksInstance()
27+ if (fireworks.isRunning) {
28+ fireworks.waitStop()
29+ } else {
30+ fireworks.start()
31+ }
32+ }
33+ </script>
34+ <Fireworks bind:this={fw} autostart={false} {options} class="fireworks" />
35+ ```
Original file line number Diff line number Diff line change 11<script lang =" ts" >
2- import { onMount , onDestroy } from ' svelte'
32 import { Fireworks } from ' fireworks-js'
43 import type { FireworksOptions } from ' fireworks-js'
54
98 export let style: string = ' '
109 export let options: FireworksOptions = {}
1110
12- let container: HTMLDivElement
1311 let fireworks: Fireworks
1412
1513 export function fireworksInstance() {
1614 return fireworks
1715 }
1816
19- onMount (() => {
17+ function setup( container : HTMLDivElement , options : FireworksOptions ) {
2018 fireworks = new Fireworks (container , options )
2119 if (autostart ) {
2220 fireworks .start ()
2321 }
24- })
25-
26- onDestroy (() => {
27- fireworks ?.stop ()
28- })
22+ return {
23+ update(options : FireworksOptions ) {
24+ fireworks .updateOptions (options )
25+ },
26+ destroy() {
27+ fireworks .stop ()
28+ }
29+ }
30+ }
2931 </script >
3032
31- <div bind:this ={ container } class ={className } {style }>
33+ <div class ={className } {style } use:setup ={ options }>
3234 <slot ></slot >
3335</div >
You can’t perform that action at this time.
0 commit comments