Javascript 最佳实践:我应该为此使用ng开关吗?

Javascript 最佳实践:我应该为此使用ng开关吗?,javascript,angularjs,ng-switch,Javascript,Angularjs,Ng Switch,这个物体有角度 $scope.columns = { workspace: { title: "Workspace", type: "workspace", activities: [] }, alerts: { title: "Alerts", type: "alert", activities: [] }, main: { title: "M

这个物体有角度

$scope.columns = {
    workspace: {
        title: "Workspace",
        type: "workspace",
        activities: []
    },
    alerts: {
        title: "Alerts",
        type: "alert",
        activities: []
    },
    main: {
        title: "Main Feed",
        type: "main",
        activities: []
    }
};
在我的HTML中,我需要循环使用它,以便在我的应用程序中动态创建一系列列(比如Trello)

每个
类型都是对自定义指令的引用

我想找出最好的方法来下达指令

基于这些数据,下面的代码是否是处理动态创建这些数据的适当方法

<div ng-repeat="(key, obj) in columns">

    <div ng-switch on="obj.type">
        <workspace-feed ng-switch-when="workspace" />
        <alert-feed ng-switch-when="alert" />
        <main-feed ng-switch-when="main" />
        <filter-feed ng-switch-when="filter" />
    </div>

</div>

我希望能做一些像<代码>
但我不确定这是否有效,或者是否有更好的方法来创建它


非常感谢您的想法

到目前为止,您所拥有的一切看起来都很好

根据列的不同程度,您可以选择只使用一个指令动态加载模板,而不是使用多个指令。例如,请看:



ngSwitch怎么了?看起来不错。每种饲料有多不同?也许每个提要不需要单独的指令——也许可以使用一个指令根据列类型动态加载模板。这取决于您的列。@dsfq-没问题,我只是在寻找类似的“最佳实践”。@Agop-我不知道我可以动态加载模板。这听起来正是我需要的。谢谢你能告诉我们你的指令在做什么吗?
<div ng-include="'columns/' + column.type + '.html'"></div>