github.com/secoba/wails/v2@v2.6.4/pkg/templates/generate/assets/vanilla-ts/frontend/src/main.ts (about) 1 import './style.css'; 2 import './app.css'; 3 4 import logo from './assets/images/logo-universal.png'; 5 import {Greet} from '../wailsjs/go/main/App'; 6 7 // Setup the greet function 8 window.greet = function () { 9 // Get name 10 let name = nameElement!.value; 11 12 // Check if the input is empty 13 if (name === "") return; 14 15 // Call App.Greet(name) 16 try { 17 Greet(name) 18 .then((result) => { 19 // Update result with data back from App.Greet() 20 resultElement!.innerText = result; 21 }) 22 .catch((err) => { 23 console.error(err); 24 }); 25 } catch (err) { 26 console.error(err); 27 } 28 }; 29 30 document.querySelector('#app')!.innerHTML = ` 31 <img id="logo" class="logo"> 32 <div class="result" id="result">Please enter your name below 👇</div> 33 <div class="input-box" id="input"> 34 <input class="input" id="name" type="text" autocomplete="off" /> 35 <button class="btn" onclick="greet()">Greet</button> 36 </div> 37 </div> 38 `; 39 (document.getElementById('logo') as HTMLImageElement).src = logo; 40 41 let nameElement = (document.getElementById("name") as HTMLInputElement); 42 nameElement.focus(); 43 let resultElement = document.getElementById("result"); 44 45 declare global { 46 interface Window { 47 greet: () => void; 48 } 49 }