Esto realmente me molesta. Por favor, eche un vistazo al Hello World example de knockout.js.¿No se puede obtener la muestra más simple de knockout.js para trabajar?
Aquí está mi código:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Home Page</title>
<script src="knockout-1.2.1.debug.js" type="text/javascript"></script>
<script type="text/javascript">
// Here's my data model
var viewModel = {
firstName: ko.observable("Planet"),
lastName: ko.observable("Earth")
};
viewModel.fullName = ko.dependentObservable(function() {
// Knockout tracks dependencies automatically. It knows that fullName depends on firstName and lastName, because these get called when evaluating fullName.
return viewModel.firstName() + " " + viewModel.lastName();
});
ko.applyBindings(viewModel); // This makes Knockout get to work
</script>
</head>
<body>
<p>First name: <input data-bind="value: firstName" /></p>
<p>Last name: <input data-bind="value: lastName" /></p>
<h2>Hello, <span data-bind="text: fullName"> </span>!</h2>
</body>
</html>
Parece, que la unión no funciona. Si yo alert(viewModel.fullName());
obtengo "Planet Earth" como se esperaba. Pero ni los elementos de entrada ni el tramo se llenan de datos.
¿Qué estoy haciendo mal?
Here es un archivo zip que incluye tanto mi archivo y knockout.js
Eso no sirve. Y en el ejemplo, tampoco hay parámetro viewModel para dependObservable – Sandro
¿Qué navegador estás usando? Estoy usando Chrome: Mac y tengo su código exacto para trabajar aquí: http://jsfiddle.net/3Appe/1/ – gislikonrad
@ GísliKonráð Parece que la razón por la que su código está trabajando en el jsfiddle es porque está configurado para ejecuta la biblioteca js en carga. – Zack