我正在尝试从knockout.js教程我的visualstudio asp.net项目中转换一些代码。
我觉得我设置的一切都很好,我用bower来添加淘汰库依赖。
我想让一些代码正在使用knockout。这就是我所拥有的:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<p>First name: <strong data-bind="text: firstName"></strong></p>
<p>Last name: <strong data-bind="text: lastName"></strong></p>
<script src="lib/knockout/dist/knockout.js" type="text/javascript">
function AppViewModel() {
this.firstName = "Devin";
this.lastName = "Salemi";
}
// Activates knockout.js
ko.applyBindings(new AppViewModel());
</script>
</body>
</html>
当我去网站时,我看到的只是 名字:
姓氏:
所以即使我在JS中设置它们,实际值也不会出现。它应该读 - 名字:Devin
姓氏:Salemi
在IDE中,非常确定所有函数都被链接到很好,例如当我写ko时。 IDE为我提供了所有选项,所以我认为我已经安装了库...
答案 0 :(得分:1)
您需要将自定义javascript包装在单独的<script>
代码中。
只要脚本标记上有src=""
,它就会忽略内部内容,并从src文件加载。因此,对于所有自定义脚本,您需要另一个没有src
属性的脚本标记:
<p>First name: <strong data-bind="text: firstName"></strong></p>
<p>Last name: <strong data-bind="text: lastName"></strong></p>
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js" type="text/javascript">
</script>
<script>
function AppViewModel() {
this.firstName = "Devin";
this.lastName = "Salemi";
}
// Activates knockout.js
ko.applyBindings(new AppViewModel());
</script>
&#13;