Estoy trabajando en un proyecto angular simple en el que estoy tratando de importar Material Design a mi proyecto, pero algunos de los componentes no funcionan correctamente y una advertencia de la consola dice:
No se pudo encontrar HammerJS. Es posible que algunos componentes de Angular Material no funcionen correctamente.
He hammerjsinstalado y también @angular/material. ¿Cómo resuelvo este problema?
Nota al margen
Puede valer la pena señalar que si ha hammerjsinstalado y sus componentes aún no se renderizan correctamente, asegúrese de que está utilizando angular material componentes y no elementos html con materialize-css clases . Si está utilizando en materialize-csslugar de angular material, deberá agregarlo a su proyecto por separado.
fuente

polyfills.tssilenciar la advertencia, ¡lo cual es genial! Pero los componentes de diseño de materiales aún no se representan correctamente: / Incluiré una captura de pantalla en la descripción de la pregunta. ¡Gracias por su ayuda hasta ahora!index.htmlarchivo. whoopsie .. Todo se ve bien ahora. ¡Salud por la ayuda!hammer. ¿Hay alguna forma de desactivar estas advertencias? Obtengo como 30 de estos en mis pruebas.Instalar hammerjs
con npm
(o) con hilo
Luego, importe
hammerjsen el punto de entrada de su aplicación (por ejemplo, src / main.ts).fuente
import 'hammerjs';todos*.spect.tslos archivos de prueba que utilizan componentes de material para corregir la advertencia cuando se ejecutang test.tsconfig.jsonpero la importación funciona, gracias por la respuesta.import it on your app's entry point (e.g. src/main.ts)lugar de en app.module.ts. Obviamente, en realidad no importa de todos modos.En su
systemjs.config.jsarchivo, también debe agregar la siguiente entrada:'hammerjs': 'npm:hammerjs/hammer.js',junto con, por supuesto:
'@angular/material': 'npm:@angular/material/bundles/material.umd.js',La otra cosa que falta en su código (al menos en base a lo que tiene en el repositorio de GH) es la inclusión del CSS de Material Design, agregue esto a su
index.htmlarchivo:<link href="https://rawgit.com/angular/material2-builds/master/core/theming/prebuilt/indigo-pink.css" rel="stylesheet">Espero que esto ayude.
fuente
esto funcionó para mí (y esto también es con ionic4) Podría hacer que hammer.js funcione, y también iónico con material.angular.io (en la parte inferior)
Martillo + iónico (martillo + angular también):
luego
luego
luego
luego
Código de muestra del sitio de hammerjs funciona
Martillo + iónico + material: para hacer que el martillo de material funcione con iónico
y listo, tu control deslizante de material funciona.
fuente
Abre tu línea de comando o powershell, escribe el directorio de tu proyecto angular2:,
cd your-project's-rootpresiona enter y pega:Npm agregará automáticamente todas las dependencias a su
package.jsonarchivo.fuente
--savelo usé mientras lo instalaba por npm y todo salió bien, pero como eres un usuario muy experimentado, sería imprudente discutir contigo.--saveya no es necesario porque se usará automáticamente. docs.npmjs.com/cli/install--save, seguirá funcionando, pero no se agregará al archivo package.json, lo que significa que no se instalará automáticamente cuando se ejecutenpm installen el futuroagregue esto a typescript.config en las opciones del compilador
"tipos": ["hammerjs"]
agregue esto a app.components.ts:
fuente
Instalar con
o
Después de la instalación, impórtelo en el punto de entrada de su aplicación (por ejemplo, src / main.ts).
Guía de inicio de material angular
fuente