---
pageClass: rule-details
sidebarDepth: 0
title: vue/no-side-effects-in-computed-properties
description: disallow side effects in computed properties
since: v3.6.0
---
# vue/no-side-effects-in-computed-properties
> disallow side effects in computed properties
- :gear: This rule is included in the following preset configs:
- `*.configs["flat/essential"]`
- `*.configs["flat/vue2-essential"]`
- `*.configs["flat/strongly-recommended"]`
- `*.configs["flat/vue2-strongly-recommended"]`
- `*.configs["flat/recommended"]`
- `*.configs["flat/vue2-recommended"]`
- `"plugin:vue/essential"`
- `"plugin:vue/vue2-essential"`
- `"plugin:vue/strongly-recommended"`
- `"plugin:vue/vue2-strongly-recommended"`
- `"plugin:vue/recommended"`
- `"plugin:vue/vue2-recommended"`
## :book: Rule Details
This rule is aimed at preventing the code which makes side effects in computed properties and functions.
It is considered a very bad practice to introduce side effects inside computed properties and functions. It makes the code not predictable and hard to understand.
```vue
```
```vue
```
```vue
```
```vue
```
## :wrench: Options
Nothing.
## :books: Further Reading
- [Guide - Computed Caching vs Methods](https://vuejs.org/guide/essentials/computed.html#computed-caching-vs-methods)
## :rocket: Version
This rule was introduced in eslint-plugin-vue v3.6.0
## :mag: Implementation
- [Rule source](https://github.com/vuejs/eslint-plugin-vue/blob/master/lib/rules/no-side-effects-in-computed-properties.js)
- [Test source](https://github.com/vuejs/eslint-plugin-vue/blob/master/tests/lib/rules/no-side-effects-in-computed-properties.test.ts)