Передать значение угловой области в переменную JavaScript - PullRequest
0 голосов
/ 06 мая 2018

Я проверил существующие подобные вопросы в SO, но я думаю, что это немного по-другому.Я знаю, что нам не нужно использовать JavaScript вместе с Angular.Но из-за некоторых зависимостей я использую его.

var ProfileApp = angular.module('ProfileApp', []);
     ProfileApp.controller('getprofile', function($scope,$http,$location){
   $scope.searchok = 1; 

   $scope.tn_id = '5';
-- Some Angular Codes are here ---

Я хочу поместить значение $ scope.tn_id в переменную JavaScript.Я пытался это любить.

<script type="text/javascript">
      var tn_id_from_angular;

</script>

Определяли переменную перед угловым кодом.Добавленный ниже код внутри углового кода, подобного этому.

   tn_id_from_angular = $scope.tn_id;
alert (tn_id_from_angular);

Когда я запускаю код, я получаю окно с предупреждением, но оно не показывает значение и выдает ошибку undefined.

Редактировать

Проще говоря, я хочу присвоить $ scope.tn_id значение переменной javascript tn_id_from_angular .

1 Ответ

0 голосов
/ 06 мая 2018

вы можете присвоить глобальную переменную объекту window, а затем получить ее

предупреждение: это хакерская территория .. мы не делаем хороший код здесь, но это может сработать

попробуйте это в вашем угловом коде:

// ...

var ProfileApp = angular.module('ProfileApp', []);
ProfileApp.controller('getprofile', function($scope,$http,$location){
  $scope.searchok = 1;
  $scope.tn_id = '5';
  window.hacks = {tn_id_from_angular: $scope.tn_id};

// ...

а затем это в вашем скрипте:

const {tn_id_from_angular} = window.hacks;
alert (tn_id_from_angular);

до тех пор, пока скрипт выполняет после , угловой код выполняет - он должен работать

если этого не произойдет, то вам нужно найти какой-нибудь "угловой готовый обратный вызов"

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