Как создать KO.JS ViewModel во внешнем JS-файле, а затем использовать его в html-файле? Это похоже на такую простую вещь, но я не могу заставить ее работать и не могу найти четкой информации о том, как это сделать. Если я упустил из виду, я извиняюсь и удалю это, если кто-то может указать мне на ответ.Использование KnockoutJS ViewModel во внешнем файле JavaScript
ВНЕШНЕЕ Виджей Малья:
var myApp = (function (myApp) {
myApp.ReportViewModel = function() {
var self = this;
self.test = ko.observable();
}
}(myApp || {}));
Seperate HTML файла:
<!DOCTYPE html>
<html>
<head><title>My Page</title></head>
<body>
<table>
<tr>
<td>First Name</td>
<td><input type="text" data-bind='value: test'/></td>
</tr>
</table>
<h2>Hello, <span data-bind="text: test"> </span>!</h2>
<!-- reference this *before* initializing -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"> </script>
<script src="http://ajax.aspnetcdn.com/ajax/knockout/knockout-2.2.1.js"></script>
<script src="myApp.js"></script>
<!-- fire off your app -->
<script>
($function(){
var reportVM = new myApp.ReportViewModel();
ko.applyBindings(reportVM);
});
</script>
EDIT Я сделал предложенные изменения. Вот как выглядит мой проект, но он все еще не работает. Кроме того, код knockout.js вообще не работает.
Вы ссылались на свой файл сценария в своем главном html с помощью ''? – nemesv
Да, я добавил –