2016-06-08 13 views
5

Pracuję nad projektem w angular2 i ciekawy, czy istnieje jakiś środek, dzięki któremu mogę używać funkcjonalności angularjs w mojej aplikacji angular2.jaka jest alternatywa metody angle.isString() w angular2?

za przykład.

w angularjs, kiedyś wykonać następujące operacje:

  1. angular.isString (wartości)
  2. angular.isArray (wartości)
  3. angular.copy (stosunek)

Chciałbym tylko wiedzieć, czy istnieje jakiś moduł lub pakiet, który może mi pomóc w wykonaniu operacji w angular2/typescript?

Z góry dziękuję.

Odpowiedz

8

Wystarczy użyć JavaScript:

  • isString

Proste

typeof foo === 'string' 
  • angular.isArray (wartość)

Sim ple

Array.isArray(value) 
  • angular.copy (wartość)

Proste

Object.assign({},value) 
+0

Object.assign nie zapewnia głębokiego kopiowania obiektu, żadnych danych wejściowych na tym obiekcie? –

+0

Możesz też spróbować lodash: https: // lodash.com/docs # cloneDeep –

+0

@BhushanGadekar Zgadzam się z zaleceniem bali – basarat

2

wyjątkiem copy, angular2 rzeczywiście dostarcza (więcej i dużo) funkcje isString i isArray od "@angular/common/src/facade/lang". Aby z nich korzystać trzeba importować je tak:

import {isString, isArray} from "@angular/common/src/facade/lang"; 

Ale organizm z tych funkcji są takie same jak basarat wspomniano, a import ten nie jest już dostępny. Taaak, użyj rozwiązanie wyżej :)

+1

Wystarczy wspomnieć: Importowanie z 'src' jest odradzane. Jest to uważane za prywatną realizację pakietu. –

+0

@ GünterZöchbauer dzięki! Stworzyłem własne opakowanie dla takich funkcji, ponieważ doszedłem do tego, ale nigdy nie znalazłem żadnej dokumentacji, w której stwierdza się, że nie powinieneś bezpośrednio używać tych – PierreDuc

+1

https://github.com/angular/angular.io/issues/ 1617 –

0

można użyć lodash-es (ES wsparcie dla lodash moduł importu), aby wykonać następujące czynności:

import { isString } from 'lodash-es'; 

console.log(isString('') === true); 

wolę to ponad przyjętą odpowiedź z typeof foo === 'string' ponieważ literały łańcuchowe są podatne do błędów i trudniej zminimalizować.

Powiązane problemy