¿Cómo usar pikaday en la aplicación Laravel 8 / livewire 2.5 / alpinejs 3 / tailwindcss: 2.2? Instalé con npm pikaday y moment-timezone y agregué líneas en
resources/js/app.js file : require('./bootstrap'); import Alpine from 'alpinejs'; window.Alpine = Alpine; Alpine.start(); require('@fortawesome/fontawesome-free/js/all.min.js'); import * as moment from 'moment-timezone'; import * as pikaday from 'pikaday/css/pikaday.css'; window.Pikaday = Pikaday;Pero tengo errores:
test:180 Uncaught TypeError: window.Pikaday is not a constructor at test:180 (anonymous) @ test:180 app.js:5260 Uncaught ReferenceError: Pikaday is not definedcuando los uso en la plantilla:
var picker = new window.Pikaday({ field: document.getElementById('datepicker'), format: 'D MMM YYYY', onSelect: function() { console.log('onSelect this::') console.log(this.getMoment().format('Do MMMM YYYY')); } });¿Cuál es la forma correcta?
Bloque modificado #1:
Logré importar Pikaday con líneas en resources/js/bootstrap.js:
var Pikaday = require('pikaday'); console.log('app.jsPikaday::') console.log(Pikaday) window.Pikaday = Pikaday;En los doscs leí:
También deberá incluir el archivo CSS de Pikaday. Este paso depende de cómo se instaló Pikaday. Importe desde NPM: @import './node_modules/pikaday/css/pikaday.css';
Pero agregando una línea en resources/js/bootstrap.js:
import './node_modules/pikaday/css/pikaday.css';Tengo errro en la consola:
ERROR in ./resources/js/bootstrap.js 19:0-48 Module not found: Error: Can't resolve './node_modules/pikaday/css/pikaday.css' in 'ProjectPath/resources/js'paquete web compilado con 1 error
Realmente encontré un archivo /ProjectPath/node_modules/pikaday/css/pikaday.css. ¿Utilizo una sintaxis no válida...?
¿Como arreglarlo?
¡Gracias!
agregué línea
<link href="{{ asset('css/pikaday.css') }}" rel="stylesheet"> :en resources/views/layouts/app.blade.php con manullyy creando un nuevo archivo /public/css/pikaday.css con el contenido del archivo /node_modules/pikaday/css/pikaday.css. Funciona, pero no me parece buena decisión...