У меня есть 2 viewmodel, одна - заголовочная панель, одна - просто копилка онлайн.Я хочу использовать функцию из одного файла JS в другой.Я вынимаю URL-адрес профиля из приборной панели и вставляю в мой div.
<a class="icon-box permission desktop" data-local-storage="image" id="changeAvatarHeader" href="@Url.Action("Profile", "User")" data-bind="style: { backgroundImage: 'url(\'' + Header().ProfileImage() + '\')' }">
II
<div class="piggy-user-profile-icon" data-local-storage="image" href="@Url.Action("Profile", "User")" data-bind="style: { backgroundImage: 'url(\'' + HeaderModel().ProfileImage() + '\')' }"></div>
проблема в профиле. Изображение не определено во второй модеме.
function DashboardViewModel() {
var self = this;
self.searchModel = new AuthorizedSearchViewModel();
self.Header = ko.observable(new HeaderModel());
self.UnSeenMessagesCount = ko.observable(0);
self.Messages = ko.observableArray();
self.CanShowRemindProfile = ko.observable(false);
self.Remind = ko.observable(new RemindModel());
self.LoadUserInformation = function () {
$.post('/User/GetUserInfoForDashboardHeader',
function (response) {
InitTawkChat(response);
self.Header(new HeaderModel(response));
}, "json").done(function () { console.warn("loaderOff") });
}
Функция данных, которую я использую в инструментальной панели, уже используется на этой странице, поэтому я не могу написать другую в моем piggybankjs, она будет считывать данные профиля дважды.
function HeaderModel (data) {
var self = this;
self.Balance = ko.observable();
self.Name = ko.observable();
self.ProfileImage = ko.observable('');
self.CompleteLevel = ko.observable();
}
Я просто хочу извлечь ProfileImage из нее