HM-41. Доработан RouteService для работы с query (#13)
This commit is contained in:
125
.eslintrc.json
125
.eslintrc.json
@ -15,47 +15,49 @@
|
||||
},
|
||||
"rules": {
|
||||
"no-console": "warn",
|
||||
"semi": "error",
|
||||
"quotes": ["error", "single"],
|
||||
"semi": "warn",
|
||||
"quotes": ["warn", "single"],
|
||||
"array-callback-return": [
|
||||
"error",
|
||||
"warn",
|
||||
{
|
||||
"allowImplicit": true,
|
||||
"checkForEach": true
|
||||
}
|
||||
],
|
||||
"no-trailing-spaces": "warn",
|
||||
"no-unused-vars": "warn",
|
||||
"default-case": "warn",
|
||||
"default-param-last": "error",
|
||||
"default-param-last": "warn",
|
||||
"no-alert": "warn",
|
||||
"no-constructor-return": "error",
|
||||
"no-else-return": "error",
|
||||
"no-empty-function": "error",
|
||||
"no-multi-spaces": "error",
|
||||
"no-multi-str": "error",
|
||||
"no-new": "error",
|
||||
"no-param-reassign": "error",
|
||||
"no-sequences": "error",
|
||||
"no-useless-concat": "error",
|
||||
"prefer-promise-reject-errors": "error",
|
||||
"require-await": "error",
|
||||
"wrap-iife": ["error", "inside"],
|
||||
"yoda": "error",
|
||||
"no-shadow": "error",
|
||||
"no-use-before-define": "error",
|
||||
"array-bracket-spacing": ["error", "never"],
|
||||
"block-spacing": ["error", "never"],
|
||||
"brace-style": ["error", "1tbs", {"allowSingleLine": true}],
|
||||
"capitalized-comments": ["error"],
|
||||
"comma-dangle": ["error", "only-multiline"],
|
||||
"comma-spacing": ["error", {"before": false, "after": true}],
|
||||
"computed-property-spacing": ["error", "never"],
|
||||
"eol-last": ["error", "always"],
|
||||
"func-call-spacing": ["error", "never"],
|
||||
"func-style": ["error", "expression"],
|
||||
"indent": ["error", 4],
|
||||
"keyword-spacing": ["error", {"before": true}],
|
||||
"line-comment-position": ["error", {"position": "above"}],
|
||||
"lines-between-class-members": ["error", "always"],
|
||||
"no-constructor-return": "warn",
|
||||
"no-else-return": "warn",
|
||||
"no-empty-function": "warn",
|
||||
"no-multi-spaces": "warn",
|
||||
"no-multi-str": "warn",
|
||||
"no-new": "warn",
|
||||
"no-param-reassign": "warn",
|
||||
"no-sequences": "warn",
|
||||
"no-useless-concat": "warn",
|
||||
"prefer-promise-reject-errors": "warn",
|
||||
"require-await": "warn",
|
||||
"wrap-iife": ["warn", "inside"],
|
||||
"yoda": "warn",
|
||||
"no-shadow": "warn",
|
||||
"no-use-before-define": "warn",
|
||||
"array-bracket-spacing": ["warn", "never"],
|
||||
"block-spacing": ["warn", "never"],
|
||||
"brace-style": ["warn", "1tbs", {"allowSingleLine": true}],
|
||||
"capitalized-comments": ["warn"],
|
||||
"comma-dangle": ["warn", "only-multiline"],
|
||||
"comma-spacing": ["warn", {"before": false, "after": true}],
|
||||
"computed-property-spacing": ["warn", "never"],
|
||||
"eol-last": ["warn", "always"],
|
||||
"func-call-spacing": ["warn", "never"],
|
||||
"func-style": ["warn", "expression"],
|
||||
"indent": ["warn", 4],
|
||||
"keyword-spacing": ["warn", {"before": true}],
|
||||
"line-comment-position": ["warn", {"position": "above"}],
|
||||
"lines-between-class-members": ["warn", "always"],
|
||||
"max-len": [
|
||||
"warn",
|
||||
{
|
||||
@ -67,34 +69,33 @@
|
||||
"ignoreRegExpLiterals": true
|
||||
}
|
||||
],
|
||||
"multiline-comment-style": ["error", "starred-block"],
|
||||
"new-cap": "error",
|
||||
"new-parens": "error",
|
||||
"newline-per-chained-call": ["error", { "ignoreChainWithDepth": 1 }],
|
||||
"no-bitwise": "error",
|
||||
"no-inline-comments": "error",
|
||||
"no-lonely-if": "error",
|
||||
"no-multi-assign": "error",
|
||||
"no-multiple-empty-lines": ["error", { "max": 1}],
|
||||
"no-nested-ternary": "error",
|
||||
"no-plusplus": "error",
|
||||
"no-trailing-spaces": "error",
|
||||
"object-curly-spacing": ["error", "never"],
|
||||
"object-property-newline": ["error", { "allowAllPropertiesOnSameLine": true }],
|
||||
"key-spacing": ["error", { "beforeColon": false, "afterColon": true }],
|
||||
"space-before-blocks": "error",
|
||||
"space-before-function-paren": ["error", "always"],
|
||||
"space-in-parens": ["error", "never"],
|
||||
"space-infix-ops": "error",
|
||||
"arrow-parens": ["error", "always"],
|
||||
"arrow-spacing": "error",
|
||||
"no-duplicate-imports": "error",
|
||||
"no-useless-computed-key": "error",
|
||||
"no-useless-constructor": "error",
|
||||
"no-var": "error",
|
||||
"prefer-const": "error",
|
||||
"prefer-rest-params": "error",
|
||||
"prefer-template": "error",
|
||||
"template-curly-spacing": "error"
|
||||
"multiline-comment-style": ["warn", "starred-block"],
|
||||
"new-cap": "warn",
|
||||
"new-parens": "warn",
|
||||
"newline-per-chained-call": ["warn", { "ignoreChainWithDepth": 1 }],
|
||||
"no-bitwise": "warn",
|
||||
"no-inline-comments": "warn",
|
||||
"no-lonely-if": "warn",
|
||||
"no-multi-assign": "warn",
|
||||
"no-multiple-empty-lines": ["warn", { "max": 1}],
|
||||
"no-nested-ternary": "warn",
|
||||
"no-plusplus": "warn",
|
||||
"object-curly-spacing": ["warn", "never"],
|
||||
"object-property-newline": ["warn", { "allowAllPropertiesOnSameLine": true }],
|
||||
"key-spacing": ["warn", { "beforeColon": false, "afterColon": true }],
|
||||
"space-before-blocks": "warn",
|
||||
"space-before-function-paren": ["warn", "always"],
|
||||
"space-in-parens": ["warn", "never"],
|
||||
"space-infix-ops": "warn",
|
||||
"arrow-parens": ["warn", "always"],
|
||||
"arrow-spacing": "warn",
|
||||
"no-duplicate-imports": "warn",
|
||||
"no-useless-computed-key": "warn",
|
||||
"no-useless-constructor": "warn",
|
||||
"no-var": "warn",
|
||||
"prefer-const": "warn",
|
||||
"prefer-rest-params": "warn",
|
||||
"prefer-template": "warn",
|
||||
"template-curly-spacing": "warn"
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,15 +0,0 @@
|
||||
// ! TODO: Удалить, необходим для примера работы с компонентами
|
||||
|
||||
import Component from '../component';
|
||||
|
||||
class TestButton extends Component {
|
||||
constructor () {
|
||||
super('#test-button', document.body);
|
||||
|
||||
this.addEventListener(this.mainNode, 'click', (evt) => {
|
||||
this.next('click', evt);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export default TestButton;
|
||||
@ -1,3 +0,0 @@
|
||||
import TestButton from './TestButton';
|
||||
|
||||
export default TestButton;
|
||||
@ -1,5 +1,5 @@
|
||||
import EmitService from './EmitService';
|
||||
import {parse} from 'querystring';
|
||||
import {parse, stringify} from 'querystring';
|
||||
|
||||
const ROUTE_CHANGE = 'routeChange';
|
||||
|
||||
@ -26,8 +26,10 @@ class RouteService extends EmitService {
|
||||
this.generateNext();
|
||||
}
|
||||
|
||||
goTo = (url) => {
|
||||
this.history.pushState({}, '', url);
|
||||
goTo = (url, query) => {
|
||||
const stringQuery = stringify(query);
|
||||
const urlWithQuery = url + (stringQuery ? `?${stringQuery}` : '');
|
||||
this.history.pushState({}, '', urlWithQuery);
|
||||
this.generateNext();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user