Как я могу связать свой код JavaScript с файлом руля в NestjsJavascript

Форум по Javascript
Ответить
Anonymous
 Как я могу связать свой код JavaScript с файлом руля в Nestjs

Сообщение Anonymous »

Я строю приложение для сбора данных, используя NESTJS для бэкэнд и рулей (HBS) для шаблона. Приложение позволяет пользователям отправлять личную информацию через форму, не требуя регистрации. Администраторы могут получить доступ к собранным данным на основе трех ролей: ViewAdmin, ModifyAdmin, Superadmin
Проблема: < /strong>
Я работаю над функцией формы обновления, где администраторы могут редактировать отправленную форму. Тем не менее, я сталкиваюсь с проблемами с внедрением JavaScript в просмотры руля. В частности: < /p>
Рукоки снимают теги, что затрудняет включение встроенного JavaScript,
внешние файлы JS не работали, как ожидалось, заставляя меня исследовать вспомогательные функции руля, < /p>
, когда я пытаюсь запустить форму обновления на блейзере, страница просто идет без каких -либо ошибок. Я подозреваю, что это может быть связано с тем, как визуализируется шаблон или как вводится JavaScript, но я не уверен, что это вызывает < /p>
, кто -нибудь столкнулся с аналогичной проблемой? Любое руководство, примеры или лучшие практики были бы очень оценены < /p>
Я первоначально связал внешний файл JS, но он не сработал.
Я попытался обернуть скрипт в руль {{#raw}} ... { /{ /raw}} Блок, но не был выполнен. Зарегистрировано при загрузке страницы. < /p>
Вот мой файл main.ts < /p>

Код: Выделить всё

import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import { ValidationPipe } from '@nestjs/common';
import { NestExpressApplication } from '@nestjs/platform-express';
import { join } from 'path';
import * as hbs from 'hbs'
import Handlebars from 'handlebars'

async function bootstrap() {
const app = await NestFactory.create(AppModule);
app.enableCors({
origin: 'http://127.0.0.1:5500',
methods: 'GET,HEAD,PUT,PATCH,POST,DELETE',
preflightContinue: false,
optionsSuccessStatus: 204,
});
app.useStaticAssets(join(__dirname, '..', 'public'));
app.setBaseViewsDir(join(__dirname, '..',  'views'));
app.setViewEngine('hbs')
hbs.registerHelper('raw', function (options) {
return new Handlebars.SafeString(options.fn(this));
});
app.useGlobalPipes(new ValidationPipe({
whitelist: true
}));
await app.listen(3000);
}
bootstrap();
< /code>
Это мой фрагмент кода руля < /p>


Update Form




Date/Time
Name
Surname
Email
Phone Number
Whatsapp Number
House Address
Age Group
Birthday
Born Again
Current Church
Born Again Date



















Update Form


{{#raw}}

console.log('form submitted')
const form = document.querySelector('form');

// Add an event listener to the form submission event
form.addEventListener('submit', (event) => {
event.preventDefault();

// Get the form data
const formData = new FormData(form);
const updatedData = Object.fromEntries(formData.entries());

// Send a PATCH request to update the form data in the database
fetch(`http://localhost:3000/admin-control/${formId}`, {
method: 'PATCH',
headers: {
'Content-Type': 'application/json',
Authorization: `Bearer ${accessToken}`,
},
body: JSON.stringify(updatedData),
})
.then((response) => response.text())
.then((data) => {
// Reload the page
window.location.reload();
})
.catch((error) =>  console.error(error));
});


{{/raw}}
Теперь проблема в том, что я не думаю, что JavaScript выполняется вообще ... потому что, если это так, то, по крайней мере, я должен получить форму «Сообщение», представленная »на консоли, но мне не нужна помощь, пожалуйста,

Подробнее здесь: https://stackoverflow.com/questions/795 ... -in-nestjs
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»