Есть ли способ полностью локально хранить переменные в браузере без участия сервера?Есть - LocalStorage
const env = process.env;
const __DEV__ = env.NODE_ENV === "development";
const BASE_CSS_LOADER = {
loader: "css-loader",
options: {
importLoaders: 2,
sourceMap: true,
minimize: true
}
};
const CSS_MODULES_LOADER = {
loader: "css-loader",
options: {
importLoaders: 2,
localIdentName: "[name]__[local]___[hash:base64:5]",
modules: true,
sourceMap: true,
minimize: true
}
};
const POSTCSS_LOADER = {
loader: "postcss-loader",
options: {
sourceMap: true,
plugins: [autoprefixer],
minimize: true
}
};
const STYLE_LOADER = __DEV__ ? "style-loader" : MiniCssExtractPlugin.loader;
config.module.rules = [].concat(config.module.rules, [
{
test: /\.module\.scss$/,
use: [
STYLE_LOADER,
CSS_MODULES_LOADER,
POSTCSS_LOADER,
"sass-loader?sourceMap"
]
},
{
test: /\.module\.css$/,
use: [STYLE_LOADER, CSS_MODULES_LOADER, POSTCSS_LOADER]
},
{
test: /\.scss$/,
exclude: /\.module\.scss$/,
use: [
STYLE_LOADER,
BASE_CSS_LOADER,
POSTCSS_LOADER,
"sass-loader?sourceMap"
]
},
{
test: /\.less$/,
exclude: /\.module\.less$/,
use: [
STYLE_LOADER,
BASE_CSS_LOADER,
POSTCSS_LOADER,
"less-loader?sourceMap"
]
},
{
test: /\.css$/,
exclude: /\.module\.css$/,
use: [STYLE_LOADER, BASE_CSS_LOADER, POSTCSS_LOADER]
}
]);
%myclass {
color: blue;
@media (min-width: 600px) {
background: red;
}
@media (min-width: 800px) {
font-size: 28px;
}
}
.class1 {
@media (min-width: 600px) {
@extend %myclass;
}
}
.class2 {
@media (min-width: 800px) {
@extend %myclass;
}
}
.class3 {
@extend %myclass;
}
.class3 {
color: blue;
}
@media (min-width: 600px) {
.class1, .class3 {
background: red;
}
}
@media (min-width: 800px) {
.class2, .class3 {
font-size: 28px;
}
}
fetch()
указывать прокси, через который выполнять подключение.fetch('https://www.google.com',{ agent:new HttpsProxyAgent('http://127.0.0.1:8580')})
.then(function(res){
//...
})
render() {
const { res } = this.state;
const shouldFlimDisplayShown = !!res;
return (
<div>
<form onSubmit={this.handleSubmit}>
<label htmlFor="title">Enter title</label>
<input id="title" name="title" type="text" />
<button>Send data!</button>
</form>
{shouldFlimDisplayShown && <FilmDisplay filmName={res}/>}
</div>
);
}
import React from 'react';
class FilmDisplay extends React.Component {
constructor() {
super();
this.state = {
filmData: null
};
}
componentDidMount() {
this.fetchMovie();
}
componentDidUpdate(prevProps) {
if (prevProps.filmData !== this.props.filmData) {
this.fetchMovie();
}
}
fetchMovie() {
const { filmName } = this.props;
const URL = "http://www.omdbapi.com/?t=" + filmName + "&apikey=6540f2ec&";
fetch(URL).then(res => res.json()).then(json => {
this.setState({ filmData: json });
});
}
render() {
const { filmData } = this.state;
if (!filmData) return <div>Loading</div>;
return <div>{JSON.stringify(filmData)}</div>;
}
}
export default FilmDisplay;
<meta property="og:title" content="">
<meta property="og:site_name" content="">
<meta property="og:url" content="">
<meta property="og:description" content="">
<meta property="og:image" content="">
const mapDispatchToProps = {
getProducts,
};
const mapDispatchToProps = (dispatch, ownProps) => ({
getProducts: () => dispatch(getProducts()),
});
cosnt mapDispatchToProps = dispatch => bindActionCreators(
{
getProducts,
},
dispatch,
);
const mapDispatchToProps = (dispatch, ownProps) => ({
...bindActionCreators(
{
...productsActions,
...usersActions,
...ordersActions,
},
dispatch,
),
() => getSomeOther(ownProps.someProp),
notNeedsToWrapInDispatch,
})
values.forEach(value => {
if(element.value === value) element.selected = true;
});
if(values.includes(element.value)) element.selected = true;
var dependent = document.querySelectorAll('.dep');
[].forEach.call(dependent, function(item, i, arr) {
alert(i + ": " + item + " (массив:" + arr + ")");
});
Вариант второй - преобразуем NodeList в массив и работаем с ним уже соответственно:var dependent = [].slice.call(document.querySelectorAll('.dep'));
dependent.forEach(function(item, i, arr) {
alert(i + ": " + item + " (массив:" + arr + ")");
});
правильно ли я все понял?
мне надо на своем ресурсе заставить работать эту кнопку, а конкретнее из адаптивного сайта сделать десктопный при нажатии на эту кнопку