Функция Powershell не возвращает данные - PullRequest
0 голосов
/ 24 февраля 2019

Перед публикацией я посмотрел на Функция PowerShell не выдает вывод и Функция не возвращает данные обе ссылки не помогли.

У меня есть функцияназванный getState.Когда я звоню, ничего не возвращается.Когда я запускаю отладчик, я вижу, что переменная $ состояние устанавливается с помощью «foo», но получатель не возвращает значение $ состояние.

Вот код:

$Global:state

function setState {
  param(
    [string]$s
  )
  $state = $s
}

function getState {
  return $state
}

setState ("foo")

Write-host getState

Как мне получить строку Write-host getState для отображения foo?Спасибо!

1 Ответ

0 голосов
/ 24 февраля 2019

Если вы хотите убедиться, что в функциях используется глобальная переменная, укажите ее как глобальную.

Попробуйте:

$Global:state = $null

function setState {
  param(
    [string]$s
  )
  $Global:state = $s
}

function getState {
  return $Global:state
}

setState ("foo")

getState
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...