分类
Javascript

使用navbar和ui-router动态加载外部模板

使用AngularJS material navbar(导航栏组件)可以动态加载外部模板吗?看了AngularJS material官网的Demo,觉得还是没有交行清楚,导航栏的数据也是写死的。当然这对入门知识点很有用,不过对于实际项目,帮助就不大了。首先导航栏应该基于数据驱动来渲染,而且点击导航项时应该从动态加载外部模板。基于此,我们对md-nav-bar进行了扩展。

分类
Javascript

自定义AngularJS指令

Angular指令主要是对html的封装复用扩展。封装复用的一个很典型的场景就是多页面相同的底部,我们完全可以设定指令template属性内部嵌入代码模版,然后在每个页面中调用。类似后端语言中的include方法。更多时候可复用的html代码块作为一个模版视图,然后用ng-include或者是templateUrl来动态加载,这已经不局限于指令本身了。相比内部嵌入的方式,动态加载模板视图至少会多一次请求。

分类
Flash

为MXItemRenderer添加自定义状态

MXItemRenderer是专为MX DataGrid、MX AdvancedDataGrid及MX Tree这类MX组件提供Spark项目渲染器的基类。与其它Spark渲染器一样,它有normal、 hovered、selected和dragging等状态。但在项目渲染器中添加了自定义状态后,默认状态会覆盖原有状态,保留不了新增状态,因而会出现项目渲染器界面错乱的问题(如实例中第一个MX DataGrid)。怎么解决这一个问题呢?

分类
Flash

为Flex Datagrid添加复选框列

如果设置MX DataGrid的allowMultipleSelection值为true,就可以结合使用Ctrl或Alt选择多个项目。但是很多用户并不知道这样操作,他们更习惯通过复选框进行选择,因此我们有必要为DataGrid添加复选框列。通过列标题的复选框项渲染器可以全选或全部取消选择。

分类
Flash

让Flex DataGrid自适应高度

为了节约版面,有时Flex DataGrid自适应高度。如果是MX DataGrid,动态设定rowCount的值就行了;对于Spark DataGrid,动态设定requestedRowCount的值就能搞定。MX DataGrid最少会保留一行数据,如果rowCount为0就会变成初始化值。这种情况下,我们可以通过设定height等于headerHeight来自适应高度,看下面代码: