local update 1

This commit is contained in:
gerchek 2022-01-12 11:32:09 +05:00
parent 5379d44571
commit ba513a05f5
7 changed files with 148 additions and 89 deletions

File diff suppressed because one or more lines are too long

View File

@ -26,7 +26,7 @@ import Service from "./pages/Service";
// IMPORT STYLES // IMPORT STYLES
import "./styles/app.scss"; import "./styles/app.scss";
function App() { function App() {
return ( return (
<div className="App"> <div className="App">
<Nav /> <Nav />
@ -43,8 +43,8 @@ function App() {
<Route path="/etalons" exact> <Route path="/etalons" exact>
<Etalons /> <Etalons />
</Route> </Route>
<Route path="/etalons/1"> <Route path="/etalon/:slug" component={Etalon}>
<Etalon /> {/* <Etalon /> */}
</Route> </Route>
<Route path="/legislation"> <Route path="/legislation">
<Legislation /> <Legislation />

View File

@ -1,5 +1,9 @@
// IMPORT MODULES // IMPORT MODULES
import React, { useEffect } from "react"; import React, { useEffect } from "react";
import axios from "axios";
import i18n from '../i18n';
import '../i18n';
import { withTranslation } from 'react-i18next';
// IMPORT COMPONENTS // IMPORT COMPONENTS
import Breadcrumb from "../components/Global/Breadcrumb"; import Breadcrumb from "../components/Global/Breadcrumb";
@ -7,97 +11,139 @@ import Breadcrumb from "../components/Global/Breadcrumb";
// IMPORT IMAGES // IMPORT IMAGES
import EtalonImg from "../img/etalonImg.jpg"; import EtalonImg from "../img/etalonImg.jpg";
const Etalon = () => { // const Etalon = () => {
useEffect(() => { // useEffect(() => {
window.scrollTo(0, 0); // window.scrollTo(0, 0);
}, []); // }, []);
class Etalon extends React.Component {
_isMounted = false;
constructor(props) {
super(props);
this.state = {
items: [],
DataisLoaded: false,
};
}
componentDidMount() {
this.getTodos();
}
async getTodos() {
this._isMounted = true;
await axios.get('http://217.174.238.204:8888/api/v1/posts/'+this.props.match.params.slug)
.then(res =>
{
const items = res.data;
if (this._isMounted) {
this.setState({
items: items,
DataisLoaded: true
});
let elem = document.querySelector('.novelty-text');
if(i18n.language == 'ru')
{
elem.innerHTML= this.state.items['data'][0][0]['content'];
this._isMounted = false;
}
else if(i18n.language == 'en')
{
elem.innerHTML= JSON.parse(this.state.items['data'][0][0]['translations'][0]['attribute_data']).content;
this._isMounted = false;
}
else
{
elem.innerHTML= JSON.parse(this.state.items['data'][0][0]['translations'][1]['attribute_data']).content;
this._isMounted = false;
}
// console.log('salamlar');
}
// console.log('salamlar');
}
)
console.log('salamlar');
}
componentWillUnmount() {
// this._isMounted = false;
console.log("post gutardy");
}
render() {
const { t } = this.props;
const { DataisLoaded, items } = this.state;
if (!DataisLoaded) return <div>
<h1> Pleses wait some time.... </h1> </div> ;
if(i18n.language == 'en')
{
this.componentDidMount();
// this.componentWillUnmount();
console.log('salamlar-en');
}
else
{
this.componentDidMount();
// this.componentWillUnmount();
console.log('salamlar-ru');
}
return ( return (
<section className="etalon"> <section className="etalon">
<Breadcrumb <Breadcrumb
path_1="Государственные эталоны" path_1="Государственные эталоны"
link_1="/etalons" link_1="/etalons"
path_2="Государственный эталон единицы массы" path_2={this.props.match.params.slug}
currentUrl="../etalons/1" currentUrl="../etalons/1"
/> />
<div className="container"> <div className="container">
<div className="etalon-inner"> <div className="etalon-inner">
<div className="novelty-head">
{items['data'][0].map((item) =>(
<div className="novelty-head" key={item.id}>
<div className="novelty-img"> <div className="novelty-img">
<img src={EtalonImg} alt="Etalon" /> <img src={EtalonImg} alt="Etalon" />
</div> </div>
<h4 className="novelty-title"> <h4 className="novelty-title">
Государственный эталон единицы массы {/* { item.title } */}
{ i18n.language == 'en' &&
JSON.parse(item['translations'][0]['attribute_data']).title
}
{ i18n.language == 'ru' &&
item.title
}
{ i18n.language == 'tm' &&
JSON.parse(item['translations'][1]['attribute_data']).title
}
</h4> </h4>
</div> </div>
))}
<div className="novelty-text"> <div className="novelty-text">
<span>
<span className="pgraph">
Государственный эталон массы служит для воспроизведения,
хранения и передачи размера единицы массы в диапазоне от 1 мг до
1 кг. передача размера единицы массы гирям классом точности E2
осуществляется сличением при помощи компараторов. Работу с
гирями проводят в перчатках с микрофибры и пинцетом. Область
измерения массы является наиболее обширной. Метрологическое
обеспечение единства измерений массы используется во всех
областях науки и производственной деятельности.
</span>
<span className="pgraph">
<h6>Состав государственного эталона:</h6>
<ul>
<li>
Набор гирь с номинальным значением массы от 1 мг до 1 кг,
класса точности Е1 производства «Hafner Gewichte GmbH»
Германия;
</li>
<li>
Микровесы - масскомпаратор XP26С, НПВ 22г, d =1 мкг,
производства «MettlerToledo» Швейцария;
</li>
<li>
Масс-компаратор AX106, НПВ 111г, d =1 мкг, производства
«Mettler Тoledo» Швейцария;
</li>
<li>
Масс-компаратор AX1004 НПВ, 1109 г, d=0,1 мг, производства
«Mettler Тoledo» Швейцария;
</li>
<li>
Прибор для измерения магнитной восприимчивости Susceptometer
YSZ02C;
</li>
<li>Эталон восприимчивости YSZ01RSC-HE210-1;</li>
<li>
Прибор для контроля магнитной проницаемости материала гирь
µ=1,01-1,9; 5,0;
</li>
<li>
Система измерений и регистрации климатических условий
окружающей среды Micromec MultisensMLm 1624n.
</li>
</ul>
</span>
<span className="pgraph">
<h6>Метрологические характеристики:</h6>
<p>
В основу эталона положен метод воспроизведения единицы массы
государственным эталоном, размер которой в соответствии с
государственной поверочной схемой передается средствам
измерений массы. Передача размера единицы массы гирям 1
разряда (класса точности Е2) осуществляется сличением при
помощи компараторов. Эталон (Гири класса точности Е1)
обеспечивает воспроизведение, хранение и передачу единицы
массы в диапазоне от 1 мг до 1 кг с расширенной
неопределенностью значения которой не превышают от 0,003 мг
(для гирь номинальной массой 1 мг) до 0,5 мг (для гирь
номинальной массой 1 кг).
</p>
</span>
</span>
</div> </div>
</div> </div>
</div> </div>
</section> </section>
); );
}
}; };
export default Etalon; // export default Etalon;
export default withTranslation()(Etalon);

View File

@ -76,7 +76,7 @@ class Etalons extends React.Component {
} }
return ( return (
<section className="etalons"> <section className="etalons">
<Breadcrumb path_1="Государственные эталоны" currentUrl="../etalons" /> <Breadcrumb path_1="Государственные эталоны" currentUrl="../etalons" />
<div className="container"> <div className="container">
<div className="etalons-inner"> <div className="etalons-inner">
<div className="tab-header"> <div className="tab-header">
@ -94,7 +94,7 @@ class Etalons extends React.Component {
key={item.id} key={item.id}
img={ item['featured_images'][0]['path'] } img={ item['featured_images'][0]['path'] }
title={item.title} title={item.title}
link="../etalons/1" link={`/etalon/${item.slug}`}
/> />
))} ))}

View File

@ -11,7 +11,7 @@ class MeasuringRegister extends React.Component {
this.state = { this.state = {
items: [], items: [],
DataisLoaded: false DataisLoaded: false
}; };
} }
@ -23,7 +23,7 @@ class MeasuringRegister extends React.Component {
} }
async getTodos() { async getTodos() {
axios.get('http://127.0.0.1:8000/api/v1/reestr') await axios.get('http://217.174.238.204:8888/api/v1/reestr')
.then(res => { .then(res => {
const items = res.data; const items = res.data;
this.setState({ this.setState({

View File

@ -9,7 +9,7 @@ import { withTranslation } from 'react-i18next';
import Breadcrumb from "../components/Global/Breadcrumb"; import Breadcrumb from "../components/Global/Breadcrumb";
// TAB_1 // TAB_1
// import RightArrowBlue from "../svg/rightArrowBlue.svg"; import RightArrowBlue from "../svg/rightArrowBlue.svg";
// import TabIMG1 from "../img/tabImg_1.jpg"; // import TabIMG1 from "../img/tabImg_1.jpg";
@ -105,7 +105,20 @@ class News extends React.Component {
<span className="tab-date">30.05.2021</span> <span className="tab-date">30.05.2021</span>
<h2 className="tab-name"> <h2 className="tab-name">
{/* {item.id} */} {/* {item.id} */}
{
{ i18n.language == 'en' &&
JSON.parse(item['translations'][0]['attribute_data']).title
}
{ i18n.language == 'ru' &&
item.title
}
{ i18n.language == 'tm' &&
JSON.parse(item['translations'][1]['attribute_data']).title
}
{/* {
(() => { (() => {
if(i18n.language == 'en') if(i18n.language == 'en')
{ {
@ -125,14 +138,14 @@ class News extends React.Component {
) )
} }
}) })
} } */}
</h2> </h2>
<div className="tab-header-link tab-link"> <div className="tab-header-link tab-link">
<Link to={`/blog/${item.slug}`}> <Link to={`/blog/${item.slug}`}>
<span>Подробнее</span> <span>Подробнее</span>
<div> <div>
<img src={ item.featured_images.path } alt="RIGHTARROW" /> <img src={RightArrowBlue} alt="RIGHTARROW" />
</div> </div>
</Link> </Link>
</div> </div>

View File

@ -98,7 +98,7 @@ class Novelty extends React.Component {
<Breadcrumb <Breadcrumb
path_1="Новости" path_1="Новости"
link_1="/news" link_1="/news"
path_2={this.props.match.params.slug} // path_2={this.props.match.params.slug}
currentUrl="../news/novelty" currentUrl="../news/novelty"
/> />
<div className="container"> <div className="container">