Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

244
Vistas
No se puede encontrar el nombre 'Oficina'

Estoy usando Angular 4 con Office.js. El proyecto es creado por Angular CLI.

El código es sencillo:

 // declare const Office: any; // With the line above, the app runs perfect Office.initialize = function () { platformBrowserDynamic().bootstrapModule(AppModule); };

tengo el error

No se puede encontrar el nombre 'Oficina'.

Ya hice npm install --save-dev @types/office-js

Mi archivo tsconfig.json:

 { "compileOnSave": false, "compilerOptions": { "outDir": "./dist/out-tsc", "baseUrl": "src", "sourceMap": true, "declaration": false, "moduleResolution": "node", "emitDecoratorMetadata": true, "experimentalDecorators": true, "target": "es5", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2016", "dom" ] } }

ACTUALIZACIÓN 1:

Siguiendo la sugerencia de @MahmoodSajjadi, después npm install --save @microsoft/office-js y use

 import { Office } from '@microsoft/office-js';

Tengo este error:

ERROR en /my-app/src/main.ts (3,24): el archivo '/my-app/node_modules/@types/office-js/index.d.ts' no es un módulo.

ERROR en ./src/main.ts Módulo no encontrado: Error: No se puede resolver 'office-js' en '/my-app/src'

@ ./src/main.ts 3:0-35
@ multi webpack-dev-servidor/cliente? http://localhost:4200 ./src/main.ts

En package.json, en realidad es "@microsoft/office-js": "0.0.0" , no estoy seguro de que sea un paquete correcto.


ACTUALIZACIÓN 2:

Según la respuesta de Michael, parece que la versión de NPM no está lista, primero me quedaré con la versión de CDN. ¡Gracias por la ayuda de todos!

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Parece que aún necesita especificar que se deben usar los tipos office-js . Abra src/tsconfig.app.json y agregue office-js a la matriz de tipos, que debería verse así si anteriormente era una matriz vacía:

 "types": [ "office-js" ]

A continuación, debe ejecutar el comando tsc -p tsconfig.json desde el directorio de su proyecto antes de intentar compilar el proyecto nuevamente.

over 4 years ago · Santiago Trujillo Denunciar

0

Lo siguiente funciona perfectamente (tenga en cuenta los nombres de los paquetes)

 npm install --save office-js @types/office-js

Luego consúmalo como el global que declara.

 Office.initialize(0);

Tenga en cuenta que office-js no es un módulo, es global. Por lo tanto, no importamos de él. Más bien, el paquete está disponible ambientalmente.

Si deseamos utilizar la importación como un medio para cargar office-js en tiempo de ejecución, podemos agregar

 import 'office-js';

En cuyo caso, tampoco estamos importando nada de él, ya que no hay nada que importar, pero estamos estableciendo una dependencia en su ejecución, cuyo efecto secundario es crear la variable global window.Office .

Tenga en cuenta que en sus comentarios menciona un paquete @microsoft/office-js . En el momento de escribir este artículo, existe un paquete de este tipo, pero está completamente vacío, su punto de entrada especifica un archivo que ni siquiera existe, por lo que dudo que sea el paquete que pretende utilizar.

En una nota no relacionada , considere especificar el formato de su módulo explícitamente en su archivo tsconfig.json:

 { "compilerOptions": { "module": "commonjs" } }

Es un escenario de lo más importante.

over 4 years ago · Santiago Trujillo Denunciar

0

Por ahora, Office.js no se consume como un paquete de NPM, sino como una referencia de CDN. Sus typings/ d.ts provienen de @types , pero no su código real.

Le recomiendo que eche un vistazo a Script Lab , una herramienta recientemente anunciada y también una muestra de exhibición de código abierto, que usa Angular 4 y que puede usar como inspiración. Parte de la tecnología subyacente también se analiza en un podcast sobre el proyecto .

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda