1.@Input:可设置属性 当它通过属性绑定的形式被绑定时,值会“流入”这个属性. 在子组件中使用,例如:@Input()name:string 父组件定义宾亮,并在父组件的模板中绑定,例如: 子组件模板中:{{name}} 子组件控制器中:@Input()name:string 父组件控制器中:username = "Lion" 父组件模板中:[name] = "username" (在调用的子组件的选择器中绑定) 此时,数据即从父组件传入子组件,子组件能在本身…
一. 组件及其交互 1.组件的注册 (1).全局注册 Vue.component('组件名称', { }) 第1个参数是标签名称,第2个参数是一个选项对象. 选项参数包括 data:必须是一个function,然后要return,在return里面声明变量. template: 用``符号包裹 methods: 声明方法 注意事项: A. 模板必须是单个根元素 B. 如果使用驼峰式命名组件,那么在使用组件的时候,只能在另一个组件字符串模板中用驼峰的方式使用组件,在普通标签中直接使用的话,必须加短…
引言 在工作中引入Angular框架将近一年了,在这一年中不断的踩坑和填坑,当然也学习和积累了很多的知识,包括MVVM框架.前后端分离.前端工程化.SPA优化等等.因此想通过Angular开发实践这系列的文章分享下自己的所学,达到交流和分享的目的. 介绍之前,我假定你了解或者熟悉: NodeJs Npm Git Sass TypeScript angular-cli 环境准备 全局安装NodeJs(>6.9.x),包含npm(>3.x.x) 全局安装angular-cli npm instal…
在<Angular开发实践(六):服务端渲染>这篇文章的最后,我们也提到了在服务端渲染中需要牢记的几件事件,其中就包括不要使用window. document. navigator等浏览器特有的类型以及直接操作DOM元素. 这样就引出了 Angular 主要特性之一:横跨所有平台.通过合适的方法,使用 Angular 构建的应用,可复用在多种不同平台的应用上 -- Web.移动 Web.移动应用.原生应用和桌面原生应用. 为了能够支持跨平台,Angular 通过抽象层封装了不同平台的差异.比如…
独立组件之间数据交互:通过自定义事件 组件A中的[数据],传递给组件B 1.创建组件A,组件B 2.组件B在实例创建完成时就开始监听事件[等待接收数据]:钩子 3.组件A中触发事件,发送数据 注意:接收数据的函数,一定要绑定在生命周期创建钩子上(created:function(){})1.引入相应的文件 <script src="https://unpkg.com/vue/dist/vue.js"></script> <script src="…
在Angular应用开发中,组件可以说是随处可见的.本篇文章将介绍几种常见的组件通讯场景,也就是让两个或多个组件之间交互的方法. 根据数据的传递方向,分为父组件向子组件传递.子组件向父组件传递及通过服务传递三种交互方法. 父组件向子组件传递 子组件通过@Input装饰器定义输入属性,然后父组件在引用子组件的时候通过这些输入属性向子组件传递数据,子组件可通过setter或ngOnChanges()来截听输入属性值的变化. 先定义两个组件,分别为子组件DemoChildComponent和父组件De…
什么是变化监测 在使用 Angular 进行开发中,我们常用到 Angular 中的绑定--模型到视图的输入绑定.视图到模型的输出绑定以及视图与模型的双向绑定.而这些绑定的值之所以能在视图与模型之间保持同步,正是得益于Angular中的变化检测. 简单来说,变化检测就是 Angular 用来检测视图与模型之间绑定的值是否发生了改变,当检测到模型中绑定的值发生改变时,则同步到视图上,反之,当检测到视图上绑定的值发生改变时,则回调对应的绑定函数. 变化监测的源头 变化监测的关键在于如何最小粒度地监测…
Web Component 在介绍Angular Component之前,我们先简单了解下W3C Web Components 定义 W3C为统一组件化标准方式,提出Web Component的标准. 每个组件包含自己的html.css.js代码. Web Component标准包括以下四个重要的概念: Custom Elements(自定义标签):可以创建自定义 HTML 标记和元素: HTML Templates(HTML模版):使用 概括来说就是,可以创建自定义标签来引入组件是前端组件化的…
那么现在问题来了,我现在是在index.vue获取了服务端的数据,怎么传值到maincontent.vue?当然你也可以把获取数据放在maincontent.vue,但假如有些数据同时在header,footer,maincontent.vue被引用,如果每个compnent都去请求,就太费性能了.这时候需要用到vue的组件之间传值的特性.先从简单的,index.vue 传值到 maincontent.vue. 1.Index.vue修改如下: 2.MainContent.vue修改如下: <t…
Vue 的组件作用域都是孤立的,不允许在子组件的模板内直接引用父组件的数据.必须使用特定的方法才能实现组件之间的数据传递. 一.父组件向子组件传递数据 在 Vue 中,可以使用 props 向子组件传递数据. 子组件部分: 如果需要从父组件获取  username  的值,就需要 props:{ username:{ type:String } } 示例代码 <template> <div class="child01"> my name is {{userna…