# How to install SpinePlugin with other two methods?

**URL:** <https://phaser.discourse.group/t/how-to-install-spineplugin-with-other-two-methods/5863>\
**Category:** Phaser 3\
**Created:** [April 10, 2020, 8:09am UTC](https://phaser.discourse.group/t/how-to-install-spineplugin-with-other-two-methods/5863 "2020-04-10T08:09:23Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jeremyyang](https://avatars.discourse-cdn.com/v4/letter/j/7bcc69/32.png) [@Jeremyyang](https://phaser.discourse.group/u/Jeremyyang)\
**Post date:** [April 10, 2020, 8:09am UTC](https://phaser.discourse.group/t/how-to-install-spineplugin-with-other-two-methods/5863/1 "2020-04-10T08:09:23Z")

</div>

\*\* First methods\*\*

```javascript
this.load.plugin(
    /*key: */ 'SpinePlugin', 
    /*url: */ './plugins/SpinePlugin.js', 
    /*start: */ true, 
    /*mapping: */ 'spine'
);
this.load.setPath('assets/demo/spine');
this.load.spine('boy', 'spineboy-pro.json', 'spineboy-pro.atlas', true);

```

this method throws error: `Uncaught TypeError: this.load.spine is not a function`

\*\* Second methods\*\*

```javascript
scene: {
    preload: preload,
    create: create,
    pack: {
        files: [
            { type: 'scenePlugin', key: 'SpinePlugin', url: 'plugins/SpinePlugin.js', sceneKey: 'spine' }
        ]
    }
}

```

this method throws error too: `Uncaught TypeError: this.load.spine is not a function`.

While this one works well.

```javascript
plugins: {
    scene: [
        { key: 'SpinePlugin', plugin: window.SpinePlugin, mapping: 'spine' }
    ]
}

```

My Phaser version is 3.22.0.  
Should I give some file loader event listen, then use `this.load.spine` after the event emits?
