Я получаю:ко неопределен
Uncaught TypeError: Cannot call method 'applyBindings' of undefined
Я посмотрела на вкладке Сети в хром, и я вижу, что загружен knockout.js. Я могу набрать window.ko
на вкладке Консоль и посмотреть код нокаута
Итак, почему ошибка?
config.js:
var require = {
baseUrl: "/scripts"
};
main.js:
require([
"lib/knockout"
],
function (ko) {
ko.applyBindings();
});
index.html:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="scripts/config.js"></script>
<script data-main="app/main.js" src="scripts/lib/require.js"></script>
</head>
<body>
<input type="text" data-bind="value: test" />
</body>
</html>
поддержка AMD/RequireJS KNOCKOUT зависит от состояния [ ', если (TypeOf определить 'функцию' === && определить [ 'AMD'])'] (https://github.com/SteveSanderson/knockout /blob/master/build/fragments/amd-pre.js). Если это и предыдущий тест для времени выполнения CommonJS не пройдут, по умолчанию будет задано глобальное 'window.ko'. –