Skip to content

Instantly share code, notes, and snippets.

XaveScor

Block or report user

Report or block XaveScor

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@XaveScor
XaveScor / react-fails.md
Last active Jan 29, 2020
Неочевидности реакта
View react-fails.md

Хуки и componentWillUnmount

С первого взгляда аналог componentWillUnmount очень прост:

function useWrongUnmount(f) {
  useEffect(() => () => f(), [])
}

Если вы гляните на всякие react-awesome, то увидите, что всякие библиотеки хуков используют именно эту имплементацию:

@XaveScor
XaveScor / contextVsStateManager.MD
Last active Feb 15, 2020
Context vs StateManager
View contextVsStateManager.MD

По мотивам вопросов чатика react.js@telegram

Оффтоп: пожалуйста, не нужно в сотый раз объяснять уже набившую оскомину тему новичку, который задаст подобный вопрос. Просто поделитесь ссылкой на этот текст. С уважением, Андрей @XaveScor Звёздочка


Краткий ответ на этот вопрос, если вы не хотите разбираться детальнее:

  • Если вы экспериментируете, то можете взять в качестве стейт-менеджера что угодно. Буквально. Опыт лишним не будет.
View react.js
//Field.js
//@flow
import FieldPure from './Field.pure'
import React from 'react'
type PropsType = {
value: string,
header: string,
onChange: string => void | () => void,
type: 'text' | 'password',
View flow.js
type DataType =
| {'grant_type': 'silent'}
| {'grant_type': 'password', 'username': string, 'password': string}
type BodyType = {
'client_id': string,
'client_secret': string,
'scope': string,
} & DataType
...
request(data: DataType): Promise<string> {
View test1.java
package kz.xavescor;
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
ArrayList<ArrayList<String>> table = new ArrayList<>();
View third.sql
--http://vitu.oit.cmc.msu.ru/mod/assignment/view.php?id=1848
--1
IF OBJECT_ID('dbo.t1', 'U') IS NOT NULL
DROP TABLE dbo.t1;
CREATE TABLE t1 (
f1 int,
f2 int,
f3 varchar(5)
);
View second.sql
--http://vitu.oit.cmc.msu.ru/mod/assignment/view.php?id=1820
--1
IF OBJECT_ID('dbo.firma', 'U') IS NOT NULL
DROP TABLE dbo.firma;
CREATE TABLE firma (
codf int,
fname varchar(10),
fio varchar(18),
city varchar(15)
);
View first.sql
--1
IF OBJECT_ID('dbo.t3', 'U') IS NOT NULL
DROP TABLE dbo.t3;
CREATE TABLE t3 (
id int IDENTITY(1,1) PRIMARY KEY,
f1 varchar(12),
f2 int
);
--2
View 123.sql
--1
IF OBJECT_ID('dbo.t3', 'U') IS NOT NULL
DROP TABLE dbo.t3;
CREATE TABLE t3 (
id int IDENTITY(1,1) PRIMARY KEY,
f1 varchar(12),
f2 int
);
--2
View gist:c1fe24085830b3bd827ad9b017e92c3f
SELECT * FROM t3;
SELECT TOP 6 * FROM t3;
INSERT INTO t3(f1, f2) VALUES
('aaa', 100),
('aaa', 200);
SELECT DISTINCT * FROM t3;
You can’t perform that action at this time.