Я обычно создаю глобальные переменные на странице, а затем просто использую их в js.
Что-то вроде:
//mypage.html
<script type="text/javascript">
var loadScansUrl = "<%=Url.Action<ReportScannerRunController>(controller => controller.LoadScans())%>";
var loadInstancesUrl = "<%=Url.Action<ReportScannerRunController>(controller => controller.LoadInstances(-1))%>";
</script>
Тогда я использую их прямо там, где мне нужно.
//myfile.js
Ext.Ajax.request({
url: loadInstancesUrl, // here is the usage!!!
headers: {
'Content-Type': 'application/json'
},
params: this.scanId,
scope: this,
success: function (response) {
var result = Ext.decode(response.responseText);
var comboData = [];
Ext.each(result.Instances, function (instance) {
comboData.push({ Value: instance });
});
instances.store.loadData(comboData);
}
});
Возможно, это хорошая идея собрать все эти переменные в один глобальный объект, например:
var globalVariables = {};
globalVariables.someVariable = 2;
Таким образом, у вас будет одна точка входа в ваши глобальные данные.
Это просто способ, которым я делаю это, приятно слышать, как другие делают.