Javascript 敲除在forEach和data之间切换模板

Javascript 敲除在forEach和data之间切换模板,javascript,html,knockout.js,Javascript,Html,Knockout.js,我想要一个动态容器来显示我的所有内容,所以我有一个这样的模型: function ContentViewmodel() { var engines = ko.observableArray(), application = ko.observable({ name: 'luna-content-engines', foreach: engines }); function registerEngine(engine) {

我想要一个动态容器来显示我的所有内容,所以我有一个这样的模型:

function ContentViewmodel() {
        var engines = ko.observableArray(),
            application = ko.observable({ name: 'luna-content-engines', foreach: engines });

        function registerEngine(engine) {
            engines.push(engine);
        }

        function showConsoleContent() {
            application({ name: 'luna-console-template' });
        }

        function showEngineContent() {
            application({ name: 'luna-content-engines', foreach: engines });
        }

        return {
            registerEngine: registerEngine,
            engines: engines,
            showConsoleContent: showConsoleContent,
            showEngineContent: showEngineContent,
            application: application
        };

<div id="luna-content-container" data-bind="template: content"></div>
    <script type="text/html" id="luna-content">
        <div class="luna-content-menu">
            <div class="luna-content-menu-item" data-bind="click: showEngineContent">Engines</div>
            <div class="luna-content-menu-item" data-bind="click: showConsoleContent">Console</div>
        </div>
        <div>
            <div class="luna-content-engines-container" data-bind="template: application"></div>
        </div>
    </script>
函数ContentViewmodel(){
var engines=ko.observableArray(),
application=ko.observable({name:'luna content engines',foreach:engines});
功能寄存器发动机(发动机){
引擎。推(引擎);
}
函数showConsoleContent(){
应用程序({name:'luna控制台模板'});
}
函数showEngineContent(){
应用程序({name:'luna content engines',foreach:engines});
}
返回{
注册引擎:注册引擎,
引擎:引擎,
showConsoleContent:showConsoleContent,
showEngineContent:showEngineContent,
应用程序:应用程序
};
引擎
安慰
如果我从默认值切换到内容,它工作得很好,但使用forEach切换回引擎是不起作用的;如果我将其更改回正常数据,它会再次工作


也许我在对象绑定方面出了问题。有什么建议吗,即使采用完全不同的方法?

你能给我们弄一个完整的代码吗?这可能只是因为你将文本粘贴到问题中的方式,但是你的
ContentViewModel
函数没有关闭。还有,
模板
绑定正确吗ct?敲除文档显示它需要一个对象,而不是一个字符串。你在哪里看到字符串?是的,这就是我粘贴代码的方式。你能给我们一个完整的代码吗?这可能只是因为你将文本粘贴到你的问题中的方式,但是你的
ContentViewModel
函数没有关闭。还有,
模板
>绑定正确吗?敲除文档显示它需要一个对象,而不是一个字符串。你在哪里看到字符串?是的,这就是我粘贴代码的方式。你能给我们一个完整的代码吗?这可能只是因为你将文本粘贴到问题中的方式,但是你的
ContentViewModel
函数没有关闭。还有,那是
吗>模板
binding correct?敲除文档显示它使用的是对象,而不是字符串。您在哪里看到字符串?是的,我就是这样粘贴代码的。