Angular视图中的变量输入类型

时间:2013-03-20 08:41:21

标签: angularjs

我正在制作一份问卷调查应用程序,其中一组问题(以及答案的类型)将由服务器设置。这是我的范围内的一个示例(它是咖啡脚本,但你会得到这个想法):

        $scope.groups = [
        {
            id: "basics"
            text: "The Basics"
            questions: [
                {
                    id: "project_text"
                    text: "What's the name of the project?"
                    type: {
                        name: "Short Text"
                    }
                }
                {
                    id: "currency_type"
                    text: "Choose your currency"
                    type: {
                        name: "Enum"
                        options: ["$", "£", "€"]
                    }
                }
            ]
        }
        {
            id: "dev"
            text: "Development"
            questions: [
                {
                    id: "dev_cost"
                    text: "How much will development cost?"
                    type: {
                        name: "Integer"
                    }
                }
            ]
        }
    ]

问题是,在我看来,我事先并不知道我需要什么输入,因为这是由范围的状态设置的(你看上面是枚举,整数,短文,后面还有更多)

在Angular中执行此操作的好方法是什么?我的第一个想法是只有一个基于params的指令要么激活适当的指令(可能通过将相关元素注入dom,这甚至可能吗?)或者包含所有必要的输入并注入适当的指令。但是,我不确定这是否适合这样做。

有人愿意接受这个吗?谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用

ng-show="expression"

仅在表达式求值为true

时才显示某些元素

例如:

<div ng-show="foo.bar">I will be visible when foo.bar exists</div>

如果您需要更复杂的条件,请使用ng-switch或AngularUI的ui-if指令,这是执行相同切换的简洁方法。