我正在使用knockout-switch-case扩展插件,并且我很难让它使用最简单的代码。使用knockout 3.0,下面是我使用的代码;I是一个布尔值!和I'm an other文本将被显示。
// Javascript
ko.applyBindings({type: 'integer'});
<!-- Html bindings -->
<div>
<!-- ko switch: type -->
<!-- ko case: 'boolean' -->
<span> Im a boolean!</span>
<!-- /ko -->
<!-- ko case: $else -->
<span> Im an other!</span>
<!-- /ko -->
<!-- /ko -->
</div>
下面是代码的JSFiddle。我在使用这个插件做一些不正确的事情吗?
您引用的是脚本的github页面,而不是脚本文件本身。
正确路径:https://raw.githubusercontent.com/mbest/knockout-switch-case/master/knockout-switch-case.min.js
.
注::对于JSFiddle, <script>
标签类型属性应该等于text/javascript
。
演示:JSFiddle
您的问题是ko-switch插件没有在您的小提琴中加载。
manji解决方案可能无法在某些浏览器(例如IE11)中工作,因为mime类型强制:github不返回带有javascript mime类型的原始js文件,IE拒绝执行错误SEC7112。
这是一把能用的小提琴。我已经引用了插件在rawgithub.com代替(注意没有点像在raww.github.com):
<script src="http://rawgithub.com/mbest/knockout-switch-case/master/knockout-switchcase.min.js"></script>
<span data-bind='text:type'></span>
<div>
<!-- ko switch: type -->
<!-- ko case: 'boolean' -->
Im a boolean!
<!-- /ko -->
<!-- ko case: $else -->
<span> Im an other!</span>
<!-- /ko -->
<!-- /ko -->
</div>
http://jsfiddle.net/a5H92/1/提示:要找到错误,我只需要查看我的浏览器控制台。
EDIT:对不起,我粘贴了错误的代码,但小提琴是正确的;)