复合组件属性中的枚举值

发布于 2024-12-11 17:49:23 字数 154 浏览 0 评论 0 原文

我的问题非常简单:我想创建一个具有字符串属性 Type 的复合组件。

该属性将有 3 个可接受的值,[TYPE1、TYPE2、TYPE3]

是否可以说我的组件仅接受这些值?

My issue is quite simple : I want to create a composite component with a String attribute, Type.

<cc:attribute name="type" />
This attribute will have 3 acceptable values, [TYPE1, TYPE2, TYPE3]

Is it possible to say my component will accept only these values ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

败给现实 2024-12-18 17:49:23

不幸的是,不能,您不能在 cc 接口中对复合组件属性值设置编译/构建时限制。但是,您可以通过检查 cc 实现中的值来设置运行时限制。

<ui:param name="type" value="#{cc.attrs.type}" />
<ui:fragment rendered="#{type == 'TYPE1' or type == 'TYPE2' or type == 'TYPE3'}">
    <p>The type is TYPE1, TYPE2 or TYPE3.</p>
    <p>Write your component's body here.</p>
</ui:fragment>

这将是你最好的选择。

Unfortunately no, you cannot put a compile/buildtime restriction on a composite component attribute value in the cc interface. You can however put a runtime restriction by checking the value in the cc implementation.

<ui:param name="type" value="#{cc.attrs.type}" />
<ui:fragment rendered="#{type == 'TYPE1' or type == 'TYPE2' or type == 'TYPE3'}">
    <p>The type is TYPE1, TYPE2 or TYPE3.</p>
    <p>Write your component's body here.</p>
</ui:fragment>

That'll be your best bet.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文