Я хочу использовать значение $scope.data.range
из controller.js в map.js.
Это мой controller.js
angular.module('starter.controllers', [])
.controller("LocController",function($scope,$rootScope){
$scope.data.range=5000;
})
Как я могу использовать этот $scope.data.range
в map.js, который является простым файлом javascript.
Если ваш map.js не имеет отношения к Angular, вы можете использовать localStorage, чтобы сохранить свой диапазон.
Поэтому в вашем контроллере введите $localStorage
и установите переменную в localStrorage:
.controller("LocController", function($scope, $rootScope, $localStorage){
$scope.data.range = 5000;
$localStorage.range = $scope.data.range;
})
И затем в вашем map.js, получите localStorage localStorage.getItem('range');
, Здесь вы можете найти документ MDN для хранения.
Я предполагаю, что map.js находится под одним и тем же угловым модулем ("starter.controllers", []), и если вы не хотите проходить сеансы, вы можете использовать сервис или фабрику. Кроме того, вы можете использовать локальное хранилище или хранилище сеансов
Я не уверен, что могу дать полное решение, так как не знаю, как структурирована map.js, но вы можете, например, добавить функцию в map.js, например setDataRange(dataRange);
и получить доступ к этому из контроллера. Или в общем доступе и обновлении всего, что вы хотите от контроллера (при условии, что вы включили скрипт map.js перед контроллером.js). Например $scope.map = new Map(); $scope.map.range =....
$scope.map = new Map(); $scope.map.range =....
и т.д. Надеюсь, это поможет! (localstorage, как уже упоминалось, может быть хорошим решением, но все зависит от того, что вы хотите сделать)