> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mention-me.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Single Page Application (SPA) Tag Implementation

> How to handle Mention Me tags on SPAs built with React, Angular, or Vue, including resetting and validating tags.

Single Page Applications (SPAs) update content without a full page reload. Mention Me tags are designed to prevent being shown more than once per load. On SPAs built with frameworks like React, AngularJS, or VueJS, this can stop tags from reappearing when expected.

## How to identify this issue

If affected, you may see a message in your browser's developer console:

```
A tag has already fired with the identifier [linkcheckout] on this page. Suppressing tag
```

## How to reset a tag so it can re-fire

To allow a Mention Me tag to re-fire, clear its "fired" state from the browser's memory. Place this snippet above your Mention Me tag script within your SPA's code base or navigation handler.

Change the `situation` and `implementation` values to match your tag setup (for example, `link` and `checkout` for a referral tag on your checkout page).

```html theme={null}
<script type="text/javascript">
    if (window.MentionMeFiredTags != undefined && window.MentionMeFiredTags != '') {
        var situation = 'checkout';
        var implementation = 'link';

        if (window.MentionMeFiredTags[implementation + situation] == true) {
            delete window.MentionMeFiredTags[implementation + situation];
        }
    }
</script>
<script src="your-existing-referee-tag-goes-here"></script>
```

You can use this approach with any Mention Me tag. Ensure the `situation` and `implementation` values match the tag you want to reset.

## How to validate and inspect tags

Check that your tags are firing correctly using Chrome DevTools:

* Right-click on the web page
* Select **Inspect**
* Open the **Console** tab
* Paste the following command and press Enter:

```javascript theme={null}
window.MentionMe.validateTags()
```

This will describe whether your tags are valid and active.

To check which tags have already fired:

```javascript theme={null}
window.MentionMeFiredTags
```

You'll see variable names such as `linkcheckout` to indicate tags that have already fired.

For example, if you see `embeddashboard`, `embed` is the implementation, and `dashboard` is the situation.
