ember-cli / ember-cli/eslint-plugin-ember

New Rule: no-settimeout

Open
#308 0 comments 3 reactions 0 assignees View on GitHub
enhancement New Rule
Dominant language
JavaScript
Stars
263
Forks
214
Avg merge
30m
Merged PRs (30d)
5

Description

ESLint Plugin Ember Standard has this:
https://github.com/ciena-blueplanet/eslint-plugin-ember-standard/blob/master/documentation/rules/no-settimeout.md

`setTimeout()` is not run loop aware. We should suggest using Ember Run and/or Ember Concurrency instead.

Taken from that rule:

This rule ensures no calls to `setTimeout()` are made.

**ESLint Configuration**

```json
{
"rules": {
"ember-standard/no-settimeout": 2
}
}
```

**Valid**

```js
import Ember from 'ember'
const {run} = Ember

run.later(this, () => {
// do something
}, 100)
```

```js
setTimeout(() => {
// do something
}, 100)
```

> Note: In the above `setTimeout` is valid because Ember has not been imported.
This serves useful in an Ember project for files outside of the normal app/addon
files.

**Invalid**

```js
import Ember from 'ember'

setTimeout(() => {
// do something
}, 100)
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.