a8m / a8m/angular-filter

Inconsistent return value for shortFmt

Aperta
#205 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
JavaScript
Stelle
2.9k
Fork
319
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### The current behavior

When given an Number less than 1000, shortFmt returns a Number. Otherwise, it returns a String.
### Why is this a problem?

Consider the following case:

```
{{ (n | shortFmt:1) || 'N/A'}}
```

When `n = 0`, this will print "N/A" (Why? Because 0 is a false-y value in JS. Therefore, it evaluates the right-hand side of the "||"). I believe that most developers would expect this to print "0" instead. (Similar to the behavior of angular's `number` filter)
### Proposed fix

When `n < 1000`, return `n + ''`. This will coerce the Number into a String.

If this seems like a reasonable behavior, then I'll go ahead and create a PR for this later today.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.