【问题标题】:Is a code-behind file the same as a view model?代码隐藏文件与视图模型相同吗?
【发布时间】:2018-02-15 14:06:13
【问题描述】:

我对 NativeScript 的理解存在差距,这阻碍了我继续阅读“入门”教程文档。我了解基本原理、模块化 JS 结构和 commonJS 结构。

教程文档首先介绍了我完全理解的 MVVM 原理。然后教程开始讲代码隐藏文件。我理解代码隐藏文件的目的(与视图“对话”并在视图和模型之间提供两种方式绑定),但是当教程继续进行时,事情变得有点模糊(至少对我而言)视图模型和模型的主题。感觉就像代码隐藏文件视图模型,所以NativeScript的概念是:

-> 显示我的屏幕项目(标签、字段等)的视图。通常,但不一定是 .XML 文件。

-> 一个代码隐藏文件,用于设置视图和模型之间的绑定)。这视图模型。

-> 一个模型,例如 User 模型或 ShoppingCart 模型,它也可能执行 API 请求来获取/放置数据

如果这是它的工作方式,那么我可以继续学习,但目前我不确定上述是否属实。任何人都可以阐明这一点吗?我的假设是否正确,还是我遗漏了代码隐藏文件的一些重要内容?

【问题讨论】:

    标签: javascript mvvm nativescript


    【解决方案1】:

    来自 C# 世界,但我相信“代码背后”的术语源自 C# 世界。

    在 C# WPF / Xamarin 中有一个 .xaml 文件和一个 .cs 构成视图,而在 NativeScript 中有一个 .xml 文件和 .js 代码。

    因此,后面的代码被视为 View 的一部分,并且与 ViewModel 是分开的。

    NS documentation 似乎支持这个(基于示例中的文件名)这个但它有点令人困惑

    【讨论】:

    • 感谢 TheMachinist,但是...这不会让您相信存在视图文件 (login.xml)、代码隐藏 (login.js)、视图模型 (login-viewmodel.xml)。 js)和模型(users.js)?
    • 这就是您在 C# 中所拥有的 - 代码隐藏和 xaml 文件是视图。在 C# 中,它们都是一个部分类 - 所以它们一起是一个类。
    • 这也是xml和后面的代码同名的原因。您使用后面的代码添加视图逻辑。
    • 这个问题和stackoverflow.com/questions/3961263/…类似,支持以上
    • "codebehind 和 xaml 文件是视图",这似乎是有道理的。感谢 TheMachinist,我将其标记为正确。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多