📜  KnockoutJS 简介

📅  最后修改于: 2022-05-13 01:56:30.486000             🧑  作者: Mango

KnockoutJS 简介

基本介绍:
Knockout是一个用 JavaScript 编写的库,基于 MVVM (MODEL VIEW VIEWMODEL) 模式。它有助于构建丰富且响应迅速的网站。它适用于任何框架并处理数据驱动的接口。
KO是Knockout的简称。 KO 库文件小而轻。

先决条件:
HTML、CSS、 Java脚本、文档对象模型(DOM)、文本编辑器(任何)。

特征:

  • Trivially Extensible – 轻松扩展自定义行为。
  • 依赖跟踪——KO 属性和库函数之间的关系是透明的。
  • 声明式绑定——DOM 元素通过数据绑定属性连接到模型。
    或者
    它允许我们将 UI 的 HTML 元素绑定到任何数据模型。 (通常,实现响应性
    通过这个)。
  • 自动 UI 刷新- 对查看模型数据所做的更改会自动反映在 UI 中,并且
    反之亦然。
  • 它非常紧凑,压缩后约为 13KB。
  • 适用于主流浏览器。

句法:

让我们考虑一个基本程序:

看法:

查看型号:

输出:

该计划的讨论:
看法:
我们有一个输入框:你的名字是什么。此变量使用值 What is your Name View Model 进行初始化,即
第一行表示我们正在使用 data-bind 属性输入数据,即我们正在使用 HTML 控件,以使数据可编辑,但这不会在屏幕上显示名称时更新数据。
第二行只是在屏幕上打印名称,这就是我们使用正文部分中的“数据绑定”属性将视图模型中的值绑定到 HTML 元素的方式。这里,“名称”指的是视图模型变量。
查看型号:
第一行只是一个函数的名称(这是函数的编写方式)。
第三行分配给视图模型属性。
第五行是将 View Model 绑定到 View。

设置环境:
要使用 KnockoutJS,请在 HTML 页面中使用标签引用 JavaScript 文件。
如何访问 KnockoutJS:
1.从官网下载KnockoutJs的Production Build:https://knockoutjs.com/downloads/
2. 参考 CDNS 中的 KnockoutJS 库
3. 参考 CDNS 的 KnockoutJS 库的缩小版。

好处 :

  • 随时与数据模型中的 UI 元素连接是可行的。
  • 确保在网页上应用业务规则、数据安全和更多控制。
  • 提供有关工作流程的参考完整性和许多验证功能
    安全。
  • 支持事件驱动的编程模型并提供 100% 的定制。
  • 轻松创建复杂的动态数据模型。

缺点:

  • Knockout 仅用于双向数据绑定,随着数据变化自动刷新 UI,这意味着我们
    需要另一个库或工具来满足其他需求,例如基于哈希的路由、UI 组件等。
  • 难以使用存在于外部文件中的模板,这将使开发人员难以合作。