Size: a a a

2020 December 16

А

Алексей in pro.js
Anton T.
значит надо смотреть серверную часть
Ну там пока что особо ничего нет. Просто делаю роутер пост и пытаюсь вернуть результат
источник

А

Алексей in pro.js
router.post('/register', (req, res) => {
 res.send(req.body)
 const { name, email, password } = req.body;
 console.log(req.body)
 let errors = [];

 if (!name || !email || !password) {
   errors.push({ msg: 'Please enter all fields' });
 }

 if (password.length < 6) {
   errors.push({ msg: 'Password must be at least 6 characters' });
 }

 if (errors.length > 0) {
   res.render('register', {
     errors,
     name,
     email,
     password
   });
 } else {
   User.findOne({ email: email }).then(user => {
     if (user) {
       errors.push({ msg: 'Email already exists' });
       res.render('register', {
         errors,
         name,
         email,
         password
       });
     } else {
       const newUser = new User({
         name,
         email,
         password
       });

       bcrypt.genSalt(10, (err, salt) => {
         bcrypt.hash(newUser.password, salt, (err, hash) => {
           if (err) throw err;
           newUser.password = hash;
           newUser
             .save()
             .then(user => {
               req.flash(
                 'success_msg',
                 'You are now registered and can log in'
               );
               res.redirect('/users/login');
             })
             .catch(err => console.log(err));
         });
       });
     }
   });
 }
});
источник

S

Syntax Highlight Bot in pro.js
Алексей
router.post('/register', (req, res) => {
 res.send(req.body)
 const { name, email, password } = req.body;
 console.log(req.body)
 let errors = [];

 if (!name || !email || !password) {
   errors.push({ msg: 'Please enter all fields' });
 }

 if (password.length < 6) {
   errors.push({ msg: 'Password must be at least 6 characters' });
 }

 if (errors.length > 0) {
   res.render('register', {
     errors,
     name,
     email,
     password
   });
 } else {
   User.findOne({ email: email }).then(user => {
     if (user) {
       errors.push({ msg: 'Email already exists' });
       res.render('register', {
         errors,
         name,
         email,
         password
       });
     } else {
       const newUser = new User({
         name,
         email,
         password
       });

       bcrypt.genSalt(10, (err, salt) => {
         bcrypt.hash(newUser.password, salt, (err, hash) => {
           if (err) throw err;
           newUser.password = hash;
           newUser
             .save()
             .then(user => {
               req.flash(
                 'success_msg',
                 'You are now registered and can log in'
               );
               res.redirect('/users/login');
             })
             .catch(err => console.log(err));
         });
       });
     }
   });
 }
});
источник

AT

Anton T. in pro.js
Алексей
router.post('/register', (req, res) => {
 res.send(req.body)
 const { name, email, password } = req.body;
 console.log(req.body)
 let errors = [];

 if (!name || !email || !password) {
   errors.push({ msg: 'Please enter all fields' });
 }

 if (password.length < 6) {
   errors.push({ msg: 'Password must be at least 6 characters' });
 }

 if (errors.length > 0) {
   res.render('register', {
     errors,
     name,
     email,
     password
   });
 } else {
   User.findOne({ email: email }).then(user => {
     if (user) {
       errors.push({ msg: 'Email already exists' });
       res.render('register', {
         errors,
         name,
         email,
         password
       });
     } else {
       const newUser = new User({
         name,
         email,
         password
       });

       bcrypt.genSalt(10, (err, salt) => {
         bcrypt.hash(newUser.password, salt, (err, hash) => {
           if (err) throw err;
           newUser.password = hash;
           newUser
             .save()
             .then(user => {
               req.flash(
                 'success_msg',
                 'You are now registered and can log in'
               );
               res.redirect('/users/login');
             })
             .catch(err => console.log(err));
         });
       });
     }
   });
 }
});
app.use(express.json())
перед роутером вызываешь?
источник

AT

Anton T. in pro.js
в самом начале, там где инстанс экспресс настраиваешь
источник

R

Rakesh Kumar in pro.js
English
источник

R

Rakesh Kumar in pro.js
Anyone speak English pls
источник

R

Rakesh Kumar in pro.js
Help
источник

А

Алексей in pro.js
Anton T.
app.use(express.json())
перед роутером вызываешь?
Да, такое есть
источник

А

Алексей in pro.js
Не ну мне кажется у меня с фронтом какая-то проблема. Наверное. Потому что форм экшн срабатывает ведь
источник

AT

Anton T. in pro.js
Алексей
Не ну мне кажется у меня с фронтом какая-то проблема. Наверное. Потому что форм экшн срабатывает ведь
Консоль.лог бади сделай в методе который пост твой обрабатывает
источник

AT

Anton T. in pro.js
Чтобы понять данные на сервер приходят или нет
источник

А

Алексей in pro.js
Anton T.
Консоль.лог бади сделай в методе который пост твой обрабатывает
Я делаю. Там пустой массив
источник

А

Алексей in pro.js
Упс. Пустой объект
источник

СБ

Сергей Буза... in pro.js
Ребят, привет

const a = () => {
console.log('test');
return 1
}

По вашему это чистая функция или нет? С учетом того, что консоль лог это браузерный апи. Интересно мнение
источник

t

th.witness in pro.js
Сергей Буза
Ребят, привет

const a = () => {
console.log('test');
return 1
}

По вашему это чистая функция или нет? С учетом того, что консоль лог это браузерный апи. Интересно мнение
Есть сайд эффект, значит, грязный...
источник

АЗ

Анна Золотова... in pro.js
Сергей Буза
Ребят, привет

const a = () => {
console.log('test');
return 1
}

По вашему это чистая функция или нет? С учетом того, что консоль лог это браузерный апи. Интересно мнение
Чистая фунция детерминированная и без side эффектов.
Следовательно, это не чистая функция, она просто детерминированная
источник

SV

Serhiy Vaschuk in pro.js
Сергей Буза
Ребят, привет

const a = () => {
console.log('test');
return 1
}

По вашему это чистая функция или нет? С учетом того, что консоль лог это браузерный апи. Интересно мнение
Видео смотрел  функциональщика, если есть consol.log, то он сказал, что это уже не чистая
источник

СБ

Сергей Буза... in pro.js
благодарю) хотел на всякий случай убедиться
источник

В

Виктория in pro.js
Алексей
import React, { useState, useEffect } from 'react'
import { BrowserRouter as Router, Route, Switch, Link } from 'react-router-dom';

function Main() {
   const [inputsData, setInputsData] = useState({
       name: '',
       email: '',
       password: ''
   })

   const userRegister = (e) => {
       // e.preventDefault()
       console.log(inputsData)
       fetch('/users/register', { method: 'POST', headers: { 'Content-Type': 'application/json;charset=utf-8' }, body: JSON.stringify(inputsData) })
   }

   return (
       <div className='row mt-5'>
           <div className='col-md-6 m-auto'>
               <form className='card card-body text-center' onSubmit={(e) => userRegister(e)}>
                   <h1><i className='fab fa-node-js fa-3x'></i></h1>
                   <p>Register</p>
                   <input
                       placeholder='Name'
                       type="name"
                       id="name"
                       name="name"
                       value={inputsData.name}
                       onChange={({ target }) => setInputsData({ ...inputsData, name: target.value })}
                   />
                   <input
                       placeholder='Email'
                       type="email"
                       id="email"
                       name="email"
                       value={inputsData.email}
                       onChange={({ target }) => setInputsData({ ...inputsData, email: target.value })}
                   />
                   <input
                       placeholder='Password'
                       type="password"
                       id="password"
                       name="password"
                       value={inputsData.password}
                       onChange={({ target }) => setInputsData({ ...inputsData, password: target.value })}
                   />
                   <div onClick={() => userRegister()}>Register</div>
               </form>
           </div>
       </div>
   );
}

export default Main;
Пиздец
источник