【问题标题】:Aurelia view-model class namingAurelia 视图模型类命名
【发布时间】:2015-03-17 23:07:39
【问题描述】:

在 Aurelia 中,导出的视图模型类名称何时重要? Html 和 JS 文件是通过名称链接的,但里面的类名似乎无关紧要。

默认情况下,无论类的名称如何,加载器似乎都会将第一个导出的类作为视图模型。它确实可以识别“ValueConverter”后缀,但除了导出的第一类获胜之外。

这是约定俗成的吗?

【问题讨论】:

    标签: aurelia


    【解决方案1】:

    命名对于视图模型来说根本不重要。但是,视图模型应该是不使用约定或不提供元数据的模块的唯一导出。通常,它是唯一的导出,但您可以拥有其他导出,只要它们提供元数据或使用常规名称。

    导出名称仅与视图资源有关:自定义元素、附加行为、模板控制器和值转换器。当您将资源导入视图时,编译器需要知道它是什么类型的资源。您可以使用元数据提供此信息,也可以依赖命名约定。因此,如果一个类名为 FooCustomElement,它将知道该导出是一个 CustomElement。 AttachedBehavior、TemplateController 和 ValueConverter 也一样。

    此外,如果视图资源不提供元数据并且不遵循命名约定,编译器将假定它是自定义元素。

    【讨论】:

    • 我应该注意到我们很快就会简化行为。因此,AttachedBehavior 和 TemplateController 都将替换为 CustomAttribute。我们还将为此添加更多元数据选项。
    猜你喜欢
    • 1970-01-01
    • 2019-01-27
    • 1970-01-01
    • 2016-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-17
    • 1970-01-01
    相关资源
    最近更新 更多