Buscando ayuda con la aplicación de javascript personalizado en el marco Rails 6. Estoy tratando de implementar el pequeño ejemplo que proviene del módulo chess.js ( https://github.com/jhlywa/chess.js/blob/master/README.md ) en mi aplicación Rails 6 recién configurada (estoy ejecutando el en el subsistema ubuntu en Windows) que debería desencadenar un juego aleatorio de ajedrez en la consola.
index.html.erb <script> const chess = new Chess() while (!chess.game_over()) { const moves = chess.moves() const move = moves[Math.floor(Math.random()*moves.length)] chess.move(move) } console.log(chess.pgn()) </script>Tengo entendido que Rails 6 usa webpacker para administrar scripts como ese y una vez que instalo los módulos a través de npm e yarn, debería poder usar la funcionalidad sin agregar el archivo chess.js a la carpeta /app/javascript/ manualmente.
# NPM npm install chess.js # Yarn yarn add chess.js(Puedo ver que chess.js se ha agregado en config/node_modules/)
Cuando ejecuto el fragmento anterior, aparece un error:
Uncaught ReferenceError: require is not definedy cuando omito la primera línea en el fragmento anterior, obtengo:
Uncaught ReferenceError: Chess is not definedTambién estaba tratando de colocar chess.js en la carpeta /app/javascript/packs y luego cargarlo
import "chess.js" require("channels") require("packs/chess") en application.js, pero todo está saltando en la oscuridad con mi poca experiencia con el marco Rails.
¿Podría demostrar la implementación correcta de este pequeño ejemplo? ¿Es posible implementar este script en el marco de Rails 6?