Entonces, estoy usando una alerta dulce con content: "input", para ingresar un mensaje, como "hola mundo", pero el valor resultante siempre es [object Promise] . He mirado otras preguntas similares, pero han sido demasiado complicadas para mi conocimiento limitado de javascript. También miré los documentos de la API de Sweet Alert, pero tampoco fueron concluyentes.
si alguien escribe "prueba" en el cuadro de alerta, quiero que guarde "prueba" en la variable del message .
swal({ title: "Please enter a personalized greeting:", content: "input", }) .then((input) => { let message = (input); }); if (message != "" && message != null) { setCookie("greeting", message); swal("your personalized message is:", message, "success");Está utilizando message antes de que se configure dentro de la cadena Promise; sin embargo, el let message = (input); crea un message que solo está disponible dentro de ese .then , por lo que la variable del message que reclama se crea "hacia arriba" fuera del código que publicó ni siquiera se toca con el código que publicó
No estoy seguro de por qué es una Promesa, ya que nunca configuraste el message que está disponible para la segunda llamada swal como una Promesa en el código que has mostrado
Escribe tu código así y funcionará
swal({ title: "Please enter a personalized greeting:", content: "input", }) .then(message => { if (message != "" && message != null) { console.log("greeting", message); swal("your personalized message is:", message, "success"); } }); <script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js" integrity="sha512-AA1Bzp5Q0K1KanKKmvN/4d3IRKVlv9PYgwFPvm32nPO6QS8yH1HO7LbgB1pgiOxPtfeg5zEn2ba64MUcqJx6CA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>Basado en un comentario reciente: así es como usaría una promesa anterior
let message; const somePromise = swal({ title: "Please enter a personalized greeting:", content: "input", }) .then(input => message = input); somePromise.then(() => { if (message != "" && message != null) { console.log("greeting", message); swal("your personalized message is:", message, "success"); } }); <script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js" integrity="sha512-AA1Bzp5Q0K1KanKKmvN/4d3IRKVlv9PYgwFPvm32nPO6QS8yH1HO7LbgB1pgiOxPtfeg5zEn2ba64MUcqJx6CA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>