Возникли проблемы при установке значения реквизита по умолчанию для глобального значения, установленного из функции JavaScript.
Я запускал файл JavaScript сам по себе и проверил значения, но когда я устанавливаю значение реквизита по умолчанию, оно всегда не определено.Я попытался установить его в:
csProdServerTotal {csProdServerTotal}
import React from "react";
import PropTypes from "prop-types";
import { Container, Row, Col } from "shards-react";
import PageTitle from "./../components/common/PageTitle";
import SmallStats from "./../components/common/SmallStats";
import UsersOverview from "./../components/blog/UsersOverview";
import UsersByDevice from "./../components/blog/UsersByDevice";
import NewDraft from "./../components/blog/NewDraft";
import Discussions from "./../components/blog/Discussions";
import TopReferrals from "./../components/common/TopReferrals";
var request = require('request');
var cheerio = require('cheerio');
var csProdServerTotal;
var csProdServerOnlineTotal;
var csProdOnlinePercentage;
var statusOK = "OK";
request('http://Somewebsite.html', function (error, response, html) {
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html);
$('body').attr('id', 'value');
$("table").addClass("tableClass");
var parsedResults = [];
$('.tableClass').find("tr").each(function(row, element){
var row = {
"region" : $(this).children().html(),
"application" : $(this).children().next().html(),
"server" : $(this).children().next().next().html(),
"sslportnumber" : $(this).children().next().next().next().html(),
"status" : $(this).children().next().next().next().next().html()
};
parsedResults.push(row);
});
parsedResults.shift();
parsedResults[0]['status'] = "NOT";
var csProdServerOnlineTotal = parsedResults.filter((row) => row.status === statusOK).length ;
csProdServerTotal = $('.tableClass tr').length - 1;
csProdOnlinePercentage = Math.round(csProdServerOnlineTotal * 100.0 / csProdServerTotal);
}
});
BlogOverview.defaultProps = {
smallStats: [
{
label: "Posts",
//value: "2,390",
value: csProdServerTotal,
//percentage: "4.7%",
percentage: csProdOnlinePercentage,
increase: true,
chartLabels: [null, null, null, null, null, null, null],
attrs: { md: "6", sm: "6" },
datasets: [
{
label: "Today",
fill: "start",
borderWidth: 1.5,
backgroundColor: "rgba(0, 184, 216, 0.1)",
borderColor: "rgb(0, 184, 216)",
data: [4, 7, 1, 3, 5, 4, 7]
}
]
}
]
};
export default BlogOverview;
Я пытаюсь получить значение defaultprops для значения smallStat и процентное значение, чтобы показать глобально установленное значение из предыдущегоФункция запроса JS.