
женя
07.08.2018
14:27:22
а плагинг для едитора поставил?
чтобы замигало красным))

Nurlan
07.08.2018
14:28:24
Да конечно для VS CODE стоит

женя
07.08.2018
14:29:18
за это +

Google

женя
07.08.2018
14:33:29
nefalem ну шо нашел?

Nurlan
07.08.2018
14:33:48
Разобрался с линтом
блин а что отвечать при настройке
ComonJS спрашивает

женя
07.08.2018
14:34:36
еслинт просит?

Nurlan
07.08.2018
14:34:37
JSX
нет я запустил eslint — init
он теперь как npm задает вопросы чтобы конфиг создать
Я просто не знаю используется ли у меня JSX
я использую Express, Passport
а JSX вроде не использую


женя
07.08.2018
14:36:23
создай файл в проекте .eslintrc
и положи туда
{
"env": {
"browser": true,
"node": true
},
"globals": {
"angular": false,
"$": false
},
"rules": {
"no-bitwise": 2,
"camelcase": [
2, {
"properties": "never"
}
],
"curly": [
2,
"all"
],
"eqeqeq": 2,
"guard-for-in": 2,
"no-extend-native": 2,
"wrap-iife": [2, "any"],
"indent": [
2,
4, {
"SwitchCase": 1
}
],
"no-use-before-define": [
2, {
"functions": false
}
],
"new-cap": 2,
"no-caller": 2,
"no-empty": 2,
"no-irregular-whitespace": 2,
"no-new": 2,
"no-plusplus": 0,
"quotes": [
2,
"single"
],
"no-undef": 2,
"no-unused-vars": 0,
"strict": 0,
"max-params": [
2,
10
],
"max-depth": [
2,
5
],
"max-statements": [
2,
40
],
"complexity": [
2,
8
],
"max-len": [
2,
130
],
"semi": 0,
"no-cond-assign": 0,
"no-debugger": 0,
"no-eq-null": 2,
"no-eval": 0,
"no-unused-expressions": 0,
"block-scoped-var": 0,
"no-iterator": 0,
"linebreak-style": 0,
"comma-style": [
2,
"last"
],
"no-loop-func": 2,
"no-multi-str": 2,
"valid-typeof": 0,
"no-proto": 0,
"no-script-url": 0,
"no-shadow": 2,
"dot-notation": 0,
"no-new-func": 0,
"no-new-wrappers": 0,
"no-invalid-this": 0,
"require-yield": 0,
"operator-linebreak": [
2,
"after"
],
"no-mixed-spaces-and-tabs": 2,
"no-trailing-spaces": 2,
"space-unary-ops": [
2, {
"nonwords": false,
"overrides": {}
}
],
"keyword-spacing": [
2,
{}
],
"space-infix-ops": 2,
"space-before-blocks": [
2,
"never"
],
"eol-last": 2,
"array-bracket-spacing": 2,
"space-in-parens": [
2,
"never"
],
"valid-jsdoc": 2,
"no-multiple-empty-lines": 2
}
}

Google

женя
07.08.2018
14:36:39
все.
Stas так нужно отвечать?

Nurlan
07.08.2018
14:38:36
а eslitrc.json удалить?

женя
07.08.2018
14:38:48
да

Nurlan
07.08.2018
14:39:50
Так а как его теперь юзать?

женя
07.08.2018
14:40:21
тебе vscode должен подстветить твои проблемные места
+ настрой чтобы при сохранении еслинт авто форматировал и проверял код
это ты можешь найти на ютубе

Nurlan
07.08.2018
14:42:27
Типа слева?

женя
07.08.2018
14:43:18
nefalem нет это тебе vscode подстветил что поменялось от прошлого коммита в репу
открой ютуб мен

Nurlan
07.08.2018
14:44:34
Ок. Спасибо добрый человек, реально помогаешь, дай бог здоровья

voix
07.08.2018
14:46:24
Заодно и преттиер в вс код свой интегрируй. Будет тебе счастье.

Stas
07.08.2018
14:49:31

женя
07.08.2018
14:52:54

Oleg
07.08.2018
14:53:16
Ваще красавчик

Vladislav
07.08.2018
15:07:31
@женя вот так вот помогаешь челику)) а он тебе пишет не оскорбляй меня )

женя
07.08.2018
15:12:42

Vladislav
07.08.2018
15:20:34
@dev0101 чето у них в репе нету по второму стайлгайда :(

Google

женя
07.08.2018
15:21:38
https://github.com/johnpapa/angular-styleguide/blob/master/a2/README.md
The Angular 2 Style Guide has been moved to the Official Angular 2 docs. I will still be shepherding the guide there. It is a living guide ... we'll keep evolving the guide.

Stas
07.08.2018
16:55:43
Нужно отображать имя юзера. В jwt токен сохранял инфу - имени юзера, но оказалось плохой идеей, так как русскоязычные имена искажаются, а то и вовсе ломают всё. Переделал, теперь отправляю запрос в бд для этого имени, для нормального отображения, но теперь вижу эту задержку в пол секунды (пока идёт запрос-ответ), когда эти символы имени появляются на элементе. Подкиньте идею как выкрутиться из ситуации?

женя
07.08.2018
17:16:57
кириллица в бд для имен ?

Andrey
07.08.2018
17:17:04

Stas
07.08.2018
17:17:38

Andrey
07.08.2018
17:18:18

Stas
07.08.2018
17:19:07
так нормально выводит или нет ?
Да, всё нормально выводит, если с базы. Там в этом jwt вроде base64 кодировка, соответственно если латиницей имя, всё отлично работает, кириллицей - ломает.

Andrey
07.08.2018
17:21:48

Stas
07.08.2018
17:22:27
похожие на буквы D с точками с разных сторон

Stas
07.08.2018
17:22:39
что б сделать скрин, нужно время назад переделать

Andrey
07.08.2018
17:22:53

Stas
07.08.2018
17:24:15
jwt = require('jsonwebtoken');
let expiry = new Date();
expiry.setFullYear(expiry.getFullYear() + 1);
return jwt.sign({
_id: user._id,
//name: user.name,
exp: parseInt(expiry.getTime() / 1000)
}, process.env.JWT_SECRET);
вот это запись
let payload = JSON.parse($window.atob(token.split('.')[1]));
это расшифровка

Andrey
07.08.2018
17:25:17
function parseJwt (token) {
const base64Url = token.split('.')[1];
const base64 = base64Url.replace('-', '+').replace('_', '/');
return JSON.parse(window.atob(base64));
};это пробуй
и выведи имя на сервере console.log(user.name); что там за выхлоп

Google

Stas
07.08.2018
17:29:24
вот как оно выводит, твой код еще не попробовал, пока только вернул

Andrey
07.08.2018
17:29:55
на клиенте выставлен chartset в head ?

Stas
07.08.2018
17:30:45
да

Andrey
07.08.2018
17:30:59
какое там значение

Stas
07.08.2018
17:31:11
для наглядности
utf-8

Andrey
07.08.2018
17:31:49
выведи что на серваке перед тем как имя юзера пихаешь, код попробуй

Stas
07.08.2018
17:35:33
пару мин

Admin
ERROR: S client not available

Stas
07.08.2018
17:37:02
переписал твой код

женя
07.08.2018
17:38:30
это приходит из апи?
или из бд?
если одно из да, то проблема не на фронте, а в одном из да

Stas
07.08.2018
17:39:31

женя
07.08.2018
17:40:12
шо то мне кажется что в базе у тебя не general_ci utf-8

Stas
07.08.2018
17:40:12
последний скрин это расшифровка jwt, там никаких запросов на бэк даже не было, это всё на ангуляре
в базе всё ок

Google

Stas
07.08.2018
17:40:42

женя
07.08.2018
17:46:10
ты в драйвере для подключения к бд указывал что нужно использовать utf-8, если нет попробуй установить
бывают кейсы когда нужно явно указать

Stas
07.08.2018
17:48:02

женя
07.08.2018
17:48:08
не могу найти команду, для консоли, чтобы получить кодировку, это нужно то-же проверить

Stas
07.08.2018
17:48:49
нет, перед самим токеном проверил имя, всё норм

женя
07.08.2018
17:49:11
а как ты проверил?

Stas
07.08.2018
17:49:14
просто jwt видимо не поддерживает кириллицу

женя
07.08.2018
17:49:27
такого не может быть, что не поддерживал

Stas
07.08.2018
17:49:29
вывел в консоль прям перед отдачей токена

женя
07.08.2018
17:51:24
и шо?

Stas
07.08.2018
17:52:35
такс, на jwt.io норм расшифровывает
видимо кривая расшифровка у меня
значит кириллицу поддерживает

женя
07.08.2018
17:53:19
конечно, оккуратно с выводами
как у тебя там в базе было лох лохов ?? ))

Stas
07.08.2018
17:55:09

женя
07.08.2018
17:55:10
заметь когда даешь нормальные имена и дело нормально идет))

Stas
07.08.2018
17:55:41

женя
07.08.2018
17:56:22