Vuejs----Vue.js 中文文档 1.0笔记

<html>

<head>
    <title></title>
</head>

<body>
    <script>
    1、 Vue 是一个构建数据驱动的web界面的库。 vue.js的目标是通过尽可能简单的API实现响应的数据绑定和组合的师徒组件。

    2、 vue.js自身不是一个全能框架--他只聚焦于视图层。 因此他非常容易学习, 非常容易与其他库或已有项目整合。 另一方面, 在与相关工具和支持库
    一起使用时, Vue.js也能完美的驱动复杂的简单应用。

    3、 响应的数据绑定:
    Vue.js的核心是一个响应的数据绑定系统, 他让数据也DOM保持同步非常简单。 在使用jQuery手工操作DOM时, 我们的代码常常是命令式的, 重复的
    与易错的。 Vue.js拥抱数据驱动的师徒概念。 同属的讲, 他意味着我们在普通的HTML模板中使用特殊的语法讲DOM绑定到底层数据。 一旦修改了数据, DOM变响应的改了数据了, 不必与DOM更新搅合在一起。 这让我们的代码更容易撰写、 理解与维护。

    4、 Web 组件规范仍然远未完成, 并且没有浏览器实现。 相比之下, Vue.js 组件不需要任何补丁, 并且在所有支持的浏览器( IE9 及更高版本) 之下表现一致。 必要时, Vue.js 组件也可以放在原生自定义元素之内。
    5、 Vue.js 组件提供了原生自定义元素所不具备的一些重要功能, 比如组件间的数据流, 自定义事件系统, 以及动态的、 带特效的组件替换。

    6、 只有被代理的属性是响应的。 如果在实例穿件之后天机啊的属性到实例上, 他不会触发师徒更新。

    7、 v - show元素会始终渲染并保存在DOM中, v - show是简单的借还元素的CSS属性的display

    8、 v - if是惰性的, 如果初始渲染是条件为假, 则什么也不做--在条件第一次为真的时候才开始局部编译( 编译会被缓存起来)

    9、 一般来说, v - if有更高的切换消耗二v - show有更高的初始渲染消耗。

    10、 因为Javascript的限制, Vue.js不能检测一下面数组变化:
    1. 直接使用索引元素, 如vm.items[0] = {}
    2. 修改数据长度, 如 vm.items.length = 0

    11、 在遍历对象时, 是按pbject.keys() 的结果遍历, 但是不能保证他的结果在不同javascript引擎下是一致的

    12、 使用v - on的好处:
    1. 扫一眼HTML模板便能轻松定位在javascript代码里对应的方法;
    2. 因为你必须在javascript理手动绑定事件, 你的viewmodel代码可以是非常纯粹的逻辑, 和DOM完全解耦, 更易于测试。
    3. 但一个viewmodel被销毁时, 所有的时间处理器都会被删除。 你必须如何自己清理他们。

    13、 父子组件通信
    子组件可以用this.$parent访问他的父组件。 根实例可以用this.$root来访问。 父组件有一个数组this.$children, 包换他所有的
    子元素。
    尽管可以访问父链上的任意实例, 步子子组件应当避免直接依赖父组件的数据, 应当显示的使用props传递数据
    1. 折让父组件与子组件紧密耦合;
    2. 只看父组件, 很难理解父组件的状态。 因为它能被人以子组件修改! 理想情况下自由组件自己能修改他的状态

    14、 自定义事件:
    使用 $on() 监听事件;
    使用 $emit() 在它上面触发事件;
    使用 $dispatch() 派发事件, 事件沿着父链冒泡;
    使用 $broadcast() 广播事件, 事件向下传导给所有的后代。
    15、编写可复用组件
    一次性组件更其他组件紧密耦合没关系,但是可复用组件应当定义一个清晰的公开接口
    slot:
    prop允许外部环境传递数据给组件
    事件允许组件触发外部时间的action
    slot允许外部环境插入内容到组件的视图结构图

    16、断片实例
    在使用template选项时,模板的内容将替换实例的挂载元素。因而推荐模板的顶级元素始终是单个元素
    下面几种会变成一个断片实例:
    1.模板包含多个顶级元素
    2.模板包含普通文本
    3.模板只包含其他组件
    4.模板包含一个元素指令
    5.模板节点有一个流程控制指令

    17、如何最终变化
    把一个普通对象传给Vue.js实例作为他的data选项,Vue.js讲遍历他的属性没用object.defindeProperty讲
    他们转为getter/setter。这是es5的特性,不能打补丁实现,这便是为什么Vue.js不支持IE8及更低版本

    18、变化检测问题
    收到ES5的影响,Vue.js不能检测到对象属性的添加或删除。因为Vue.js在初始化实例时讲属性转为getter
    /setter,所以属性必须在data对象上才能让Vue.js转换他,才能让他是响应式的

    19、异步更新队列
    Vue.js默认异步更新DOM。每当观察到数据变化是,Vue就开始一个队列,将同一事件循环内所有的数据变化缓存起来
    如果一个watcher被多次触发,只会推入一次到队列中。等到下一次事件循环,Vue将队列清空,只进行必要的DOM跟新。在内部
    异步队列优先使用
    Vue.nextTick(callback)在调用DOM更新完成收调用
    20、计算属性的秘密
     应注意到 Vue.js 的计算属性不是简单的 getter。计算属性持续追踪它的响应依赖。在计算一个计算属性时,Vue.js 更新它的依赖列表并缓存结果,只有当其中一个依赖发生了变化,缓存的结果才无效。因此,只要依赖不发生变化,访问计算属性会直接返回缓存的结果,而不是调用 getter。
    </script>
</body>

</html>

  

转载于:https://www.cnblogs.com/SunlikeLWL/p/8528494.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值