angular - cloak - ng-model
Decorador de inyectables angular: esperaba 0 argumentos, pero obtuvo 1 (2)
Esta es una nueva característica en Angular 6.
@Injectable({
providedIn: ''root''
})
Tienes dos opciones:
1) Consulte la documentación de Angular 5. (Como notas de @ r-richards: cambie la versión de los documentos a v5 en el menú desplegable en la parte inferior de la barra de navegación izquierda).
2) Actualice su proyecto a Angular 6 para solucionar el problema
Sigue la guía oficial de actualización angular.
Completará un breve formulario seleccionando la versión de Angular en la que se encuentra y la versión a la que desea actualizar. A continuación, muestra la lista de pasos necesarios para realizar la actualización. Debe seguir esta guía para todas las actualizaciones. (Por favor upvote antes de navegar lejos) :)
Aquí hay algunas notas que tomé mientras actualizaba de Angular 5 a Angular 6.
Su kilometraje puede variar dependiendo de su configuración. Me vinculé a un par de artículos a continuación que me ayudaron.
Actualizar npm (administrador de paquetes de nodo)
npm install npm@latest -g
Nodo upgarde
Para usuarios de Windows y mac, el método más sencillo es con el instalador oficial de Node. O vea el artículo a continuación para linux / unix.
https://nodejs.org/en/download/
Upgarde Angular CLI global y localmente
npm install -g @angular/cli
npm install @angular/cli
Actualizar package.json
ng update @angular/cli
Actualizar @ Angular / Core
ng update @angular/core
Actualice el material angular si lo está utilizando
ng update @angular/material
Compruebe si hay otros paquetes que deban actualizarse
npm outdated
Actualizar todos los paquetes desactualizados
npm update
O para actualizar un paquete específico
npm update <package name>
Es posible que necesite convertir el archivo angular-cli.json a angular.json
ng update @angular/cli --migrate-only --from=1.7.4
Referencias:
Nodo de actualización
http://www.hostingadvice.com/how-to/update-node-js-latest-version/
Actualización angular
https://vitalflux.com/upgrade-angular-5-app-angular-6/
Otros pasos para solucionar problemas
https://stackoverflow.com/a/49811824/151325
Acabo de comenzar con el tutorial básico de Angular pero me enfrento a un pequeño problema de compilación.
Estoy siguiendo el tutorial en el sitio web de Angular. Estoy atascado con la parte de inyección de dependencia porque no quiere compilar.
En el tutorial solicitan crear un servicio con:
ng generate service hero
En este servicio generado tienes un decorador como este:
@Injectable()
Luego piden agregar un parámetro a ese decorador como este:
@Injectable({
providedIn: ''root''
})
Cuando intento hacerlo, tengo un error de TypeScript que me dice:
error TS2554: Expected 0 arguments, but got 1.
Las versiones que uso son las siguientes:
Angular CLI: 1.7.4
Node: 9.5.0
OS: win32 x64
Angular: 5.2.10
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router
@angular/cli: 1.7.4
@angular-devkit/build-optimizer: 0.3.2
@angular-devkit/core: 0.3.2
@angular-devkit/schematics: 0.3.2
@ngtools/json-schema: 1.2.0
@ngtools/webpack: 1.10.2
@schematics/angular: 0.3.2
@schematics/package-update: 0.3.2
typescript: 2.5.3
webpack: 3.11.0
¿Alguna idea de por qué no acepta el parámetro?
Gracias por adelantado !
También tuve este problema, y lo resolví, incluido el nombre del servicio de clase en "Proveedores" en app.module.ts.
Me gusta esto:
@NgModule({
declarations:[
],
imports:[
CommonModule,
HttpClientModule
],
exports:[
],
providers: [
PostListService
]
})