Получите имя пользователя Windows в наследии (не WebExtensions) дополнение Firefox

Вам необходимо будет использовать withRouter HOC с ItemRecipe, поскольку он не получает реквизиты маршрутизатора

const ItemRecipe = ({ recipe }) => {
  const { label, image } = recipe.recipe;
  return (
    <li>
      <p> {label} </p>
      <img src={image} alt="food" />


      <Link to={`/meals/${label}`} >
        <p>More information</p>
      </Link >
    </li>
  );
}

export default withRouter(ItemRecipe);

Также вам следует кодировать параметры URL-адреса перед использованием с помощью ссылки со ссылкой enocdeURIComponent и декодировать это в DetailsRecipe с использованием decodeURIComponent

<Link to={`/meals/${encodeURIComponenent(label)}`} >
25
задан Makyen 7 October 2017 в 06:56
поделиться

4 ответа

Это делает трюк в Windows:

function getUser() {
   return Components.classes["@mozilla.org/process/environment;1"].getService(Components.interfaces.nsIEnvironment).get('USERNAME');
}      
9
ответ дан Strelok 28 November 2019 в 21:58
поделиться

Следующий код работает для меня вместо события onload с вызовом функции:

var objUserInfo = new ActiveXObject("WScript.network");
document.write(objUserInfo.ComputerName+"<br>"); 
document.write(objUserInfo.UserDomain+"<br>"); 
document.write(objUserInfo.UserName+"<br>");  
var uname =  objUserInfo.UserName;
alert(uname);
3
ответ дан Darin Kolev 28 November 2019 в 21:58
поделиться
<html>
<head>
    <script language="javascript">
        function GetUserName()
        {
            var wshell = new ActiveXObject("WScript.Shell");
            alert(wshell.ExpandEnvironmentStrings("%USERNAME%"));
        }
    </script>
</head>
<body OnLoad="GetUserName();">
</body>
</html>
-3
ответ дан carny666 28 November 2019 в 21:58
поделиться

Вы можете использовать интерфейс nsIEnvironment для получения переменной среды USERNAME .

5
ответ дан 28 November 2019 в 21:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: