简述angular 中constant和$filter的用法?

AngularJS constant和value区别详解 angularJS可以通过constant(name,value)和value(name,value)对于创建服务也是很重要的。 相同点是:都可以接受两个参数,name和value。 区别: 1.constant(name,value)可以将一个已经存在的变量值注册为服务,并将其注入到应用的其他部分中。其中,name为注册的常量的名字,value为注册的常量的值或对象。 举例: (1)value为值时: angular.module('myApp') .constant('apiKey','123123123') .controller('MyController', function($s 立即下载

这里是修真院技术分享。
1.背景介绍

angular是什么:AngularJS 最初由Misko Hevery和Adam Abrons于2009年开发,后来成为了Google公司的项目。AngularJS弥补了HTML在构建应用方面的不足,其通过使用标识符(directives)结构,来扩展Web应用中的HTML词汇,使开发者可以使用HTML来声明动态内容,从而使得Web开发和测试工作变得更加容易。

constant,可以算作angular的全局数据,想要使用的话,只需要在控制器注入即可。

$filter,angular的过滤器,如果想要在控制器里面使用,也是注入,然后调用,而html中的数据过滤,直接键入过滤器名称和对应值即可。

2.知识剖析
constant

每当搜索constant时候,总会连带出现value的说明。

两者都可以作为全局变量使用,但是有两点不同:

1.value不可以在config里注入,但是constant可以。

2.value可以修改,但是constant不可以修改,一般直接用constant配置一些需要经常使用的数据。

下面是简单的应用例子:

angular.module(‘myApp’, [])

.constant(‘apiKey’, ‘123123123’)

.value(‘FBid’,‘231231231’)

.controller(‘myController’,function($scope,apiKey,FBid){

$scope.a = apiKey;

$scope.b = FBid;

})

.config(function(apiKey) {

// 在这里apiKey将被赋值为123123123

// 就像上面设置的那样

})

.config(function(FBid) {

// 这将抛出一个错误,未知的provider: FBid

// 因为在config函数内部无法访问这个值

});

filter是用来格式化数据用的

基本原型

{{expression | filter}}

多个filter连用版

{{expression | filter1 | filter2}}

传入参数版

{{expression | filter:1:2}}

AngularJS内建了一些常用的filter:

1、格式化货币:

{{ 12 | currency}} //将12格式化为货币,默认单位符号为 ‘$’, 小数默认2位

{{ 12.45 | currency:‘¥’}} //将12.45格式化为货币,使用自定义单位符号为 ‘¥’, 小数默认2位

{{ 12.45 | currency:‘CHY¥’:1}} //将12.45格式化为货币,使用自定义单位符号为 ‘CHY¥’, 小数指定1位, 会执行四舍五入操作

{{ 12.55 | currency:undefined:0}} //将12.55格式化为货币, 不改变单位符号, 小数部分将四舍五入

2、格式化日期:

{{ 1304375948024 | date:‘medium’}}//May 03, 2011 06:39:08 PM

{{ 1304375948024 | date }}//结果:May 3, 2011

{{ 1304375948024 | date:“MM/dd/yyyy @ h:mma” }}//结果:05/03/2011 @ 6:39AM

{{ 1304375948024 | date:“yyyy-MM-dd hh:mm:ss” }}//结果:2011-05-03 06:39:08

3、过滤数组:

$scope.arr = [{“age”: 20,“id”:

10,“name”: “iphone”}, {“age”: 12,“id”: 11,“name”: “sunm xing”}, {“age”:

44,“id”: 12,“name”: “test abc”} ]

{{arr | filter:‘s’}} //查找含有有s的行//上例结果:[{“age”:12,“id”:11,“name”:“sunm xing”},{“age”:44,“id”:12,“name”:“test abc”}]

{{arr | filter:{‘name’:‘ip’} }}//查找name like ip的行//上例结果:[{“age”:20,“id”:10,“name”:“iphone”}]

4、将对象格式化成标准的JSON格式:

{{ {name:‘Jack’, age: 21} | json}}

5、字符串,对象截取:

{{ “i love tank” | limitTo:6 }}//结果:i love

{{ “i love tank” | limitTo:-4 }}//结果:tank

{{ [{“age”: 20,“id”: 10,“name”:

“iphone”}, {“age”: 12,“id”: 11,“name”: “sunm xing”}, {“age”: 44,“id”:

12,“name”: “test abc”} ] | limitTo:1

}}//结果:[{“age”:20,“id”:10,“name”:“iphone”}]

6、大小写转换:

China has joined the {{ “wto” | uppercase }}.

We all need {{ “MONEY” | lowercase }}.

7、数值类:

{{ 1.234567 | number:1 }} //结果:1.2

{{ 1234567 | number }} //结果:1,234,567

8、对象排序:

$scope.arr = [{“age”: 20,“id”:

10,“name”: “iphone”}, {“age”: 12,“id”: 11,“name”: “sunm xing”}, {“age”:

44,“id”: 12,“name”: “test abc”} ]

{{arr | orderBy:‘id’:true }}//根id降序排

{{arr | orderBy:‘id’ }}//根据id升序排

9、当然,我们还可以自定义filter方法。

3.常见问题
如何使用angular中constant和$filter?

4.编码实战
angular.module(“myApp”)

.value(‘val’,{

})

//公司编辑常量组

.constant(‘con’, {

//公司人数

companyPop:[

  {type: 0, name: '1-10人'},

  {type: 1, name: '10-20人'},

  {type: 2, name: '30-50人'},

  {type: 3, name: '50-100人'},

  {type: 4, name: '100-200人'},

  {type: 5, name: '200-500人'},

  {type: 6, name: '500-1000人'},

  {type: 7, name: '1000人以上'}

],

//公司行业

//团队规模:

workGroupScale:[

  {type: 0, name: '1-10人'},

  {type: 1, name: '10-20人'},

  {type: 2, name: '30-50人'},

  {type: 3, name: '50-100人'},

  {type: 4, name: '100人以上'},

],

//用户人数

userPop:[

  {type:0,name:'不限'},

{type:1,name:‘1W-10W’},

{type:2,name:‘10W-50W’},

{type:3,name:‘50W-100W’},

{type:4,name:‘100W-1000W’},

  {type:5,name:'1000W以上'}

],

//盈利情况

earnings:[

  {type:0,name:'不限'},

  {type:1,name:'亏损'},

  {type:2,name:'平衡'},

  {type:3,name:'盈利'},

  {type:4,name:'其他'}

]

5.扩展思考
AngularJS的内置过滤器有哪些?

今天我们来了解一下AngularJS的内置过滤器

先来看看这些内置过滤器使用方法:

一个过滤器,不带参数的情况

{{expression | filter}}

一个过滤器,带参数的情况

{{expression | filter:arguments}}

一个过滤器,带多个参数的情况

{{expression | filter: arg1: arg2: …}}

多个过滤器,不带参数的情况

{{expression | filter1 | filter2 | …}}

下面我们分别使用以下AngularJS的内置过滤器

currency

currency允许我们设置自己的货币符号,默认情况下会采用客户端所处区域的货币符号。

可以这样使用:{{ 3600 | currency: “$¥”}}

返回结果为$¥123.00

number

number过滤器将数字格式化成文本,它的参数是可选的,用来控制小数点后的截取位数

如果传入的是一个非数字字符,会返回空字符串

可以这样使用:{{ 3600 | number:2}}

返回结果为:3,600.00

lowercase

lowercase将字符串转换为小写

可以这样使用:{{ “HEllo” | lowercase}}

返回结果为:hello

uppercase

uppercase将字符串转换为大写

可以这样使用:{{ “HEllo” | uppercase}}

返回结果为:HELLO

json

json过滤器可以将一个JSON或者JavaScript对象转换成字符串。

这个过滤器对调试相当有用

可以这样使用:{{ {“name”:“dreamapple”,“language”:“AngularJS”} | json}}

返回结果为:{ “name”: “dreamapple”, “language”: “AngularJS” }

date

date过滤器将日期过滤成你想要的格式,这个实在是很好的过滤器。

这个过滤器用法很多我这里列举几种常用的

{{ today | date: “yyyy - mm - dd”}}

结果为:2015 - 15 - 13

{{ today | date: “yyyy - mm - dd HH:mm::ss”}}

结果为:2015 - 18 - 13 20:18::38

[online code](2015 - 18 - 13 20:18::38)

还有三个内置的过滤器,但是使用稍微复杂一点。

6.参考文献
参考一:angularJS constant和value

参考二:AngularJS的Filter用法详解

GIS小白也能看懂的实战:5步教你将ArcGIS里的等高线和水系完美导入CAD做规划图 本文详细介绍了如何将ArcGIS中的等高线和水系数据高效导入CAD,制作专业规划底图的5个关键步骤。从数据准备、ArcGIS处理到CAD优化,涵盖坐标系设置、数据裁剪、格式转换等实用技巧,特别适合设计规划领域的新手快速掌握GIS与CAD协同工作流程。 阅读详情

相关推荐

从零构建企业级多智能体系统:LangGraph 全流程实战 + 部署指南(含代码与架构图)

> 在大模型应用爆发的今天,如何构建一个可协作、可调试、可部署的多智能体系统?LangGraph 正在成为工程师的新宠。本文从原理剖析、流程建模、代码实战到前后端部署,手把手带你用 LangGraph 构建一个企业级 AI 助理系统,整合财务分析、法务审阅、报告生成与图表可视化等 Agent 模块,全面打通从用户输入到报告输出的全链路闭环。适合有工程思维的 AI 架构师、Agent 研发人员、以及大模型项目实践者。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 3449

angularjs 设置全局变量(constant)

引用链接https://www.cnblogs.com/leiyangs/p/6923708.html 转:angularjs自身有二种,设置全局变量的方法,在加上js的设置全局变量的方法,总共有三种。要实现的功能是,在ng-app中定义的全局变量,在不同的ng-controller里都可以使用。 1,通过var 直接定义global variable,这根纯js是一样的。 2,用angula...

Alone-孤我不夜城 773

PaddleOCR SVTRv2中文识别模型训练全流程:从数据准备到推理部署

本文详细介绍了基于PaddleOCR的SVTRv2中文识别模型从数据准备、模型训练到推理部署的全流程实战。SVTRv2凭借其单视觉Transformer架构和分层混合机制,在中文文字识别任务上实现了高精度与效率的平衡。文章重点解析了数据工程、训练调优技巧及部署优化方案,帮助开发者构建定制化的OCR解决方案。

weixin_29194817的博客 287

项目总结(5)关于angular中的constant()的方法和

starter.constant("CONFIG", Object.assign(router, modules_config, config)); 说实话,当看到配置文件中的这段代码我是懵的,这段代码该怎么理解呢?很是费解,于是我就去百度了一下,并且分化瓦解了一下。所以我把它分为两部分来去归纳和总结。一个是angular.js中的方法constant() 方法,另一个是Obje

时清云的博客 1842

【RT-DETR涨点改进】独家创新改进篇 | AAAI2024 | RT-DETR引入CFBlock增强对长程依赖和全局语义信息的建模能力,有助于提升复杂场景下小目标、遮挡目标的检测精度

本文给大家介绍在RT-DETR中引入CFBlock模块,能够有效提升模型对长程依赖和全局语义信息的建模能力,在保持轻量化和高效推理的基础上增强特征表达力,特别有助于提升复杂场景下小目标、遮挡目标的检测精度,从而实现更优的精度与速度平衡。

Ai缝合怪、助力小伙伴高效发论文 260

【音视频 ffmpeg 学习】 RTMP推流 mp4文件

3.当RTMP协议在互联网中传输数据的时候,消息会被拆分成更小的单元,称为消息块(Chunk)。1.RTMP(实时消息传输协议)是Adobe 公司开发的一个基于TCP的应用层协议。2.RTMP协议中基本的数据单元称为消息(Message)。下载地址:http://nginx.org/download。下载 rtmp模块 到nginx 模块下。安装nginx 和 rtmp模块。(1). linux 环境准备。下载nginx安装包。使用 vcl 播放流。

weixin_45397344的博客 2274

简述Angular中constant和$filter的用法

大家好,我是IT修真院深圳分院第06期学员,一枚正直善良的web程序员。今天给大家分享一下,修真院官网 JS-08任务中可能会使用到的知识点:1.背景介绍我们在使用AngularJS时常常需要在不同的控制器中使用到相同的数据,或者是有一些数据需要经常用到的,这时就需要一个全局常量 constant ,使用的时候只需要在控制器注入即可。假如我们需要把时间戳格式化成某种特定日期格式或者把数据转换大小写...

不二先森的博客 920

X线DR医学图像 --- DR医用滤线栅及摩尔纹详解 (二) 摩尔纹的产生机理

1,横向摩尔纹的表现 2,纵向摩尔纹的表现 3,摩尔纹在pitch = 143μm(注:pitch为采样间隔/周期)的FPD上的表现。 4,摩尔纹的危害(严重的影响了临床诊断) 5,摩尔纹对胸片肺部肺纹理的破坏 6,滤线栅的频率(滤线栅生产厂家的产品参数)。判断摩尔纹产生的重要依据之一 7,DR平板探测器的采样频率/空间极限分辨率 l.........

松下J27录放机 4981

简述ANGULAR中CONSTANT和$FILTER的用法

这里是修真院前端小课堂,每篇分享文从 【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】 八个方面深度解析前端知识/技能,本篇分享的是: 【简述ANGULAR中CONSTANT和$FILTER的用法 】 简述ANGULAR中CONSTANT和$FILTER的用法 背景介绍 angular是什么,这里不再叙述。 constant,可以算...

IT修真院:初学者转行到互联网的聚集地 493

10.28华为OD机试真题 新系统 - 社交网络消息转发 (Java/Py/C/C++/Js/Go)

10.28华为OD机试真题 新系统 - 社交网络消息转发 (Java/Py/C/C++/Js/Go)

算法大师! 414

OBYC自动科目确定整理

WGI是用来重估发货的,通过比较发货时的价格和最新计算的价格,以此将所有差异过账到分配给此事务码的总账科目。是工厂还是公司,一般项目中都是使用工厂,使用工厂的意思就是物料在每个工厂下有一个价格,如果使用公司,则一个公司下的所有工厂都使用一个价格。如果该物料用的是移动平均价,那么该库存依然还存在的情况下,这个价格差异会过账到存货科目上而不会过账到存货的价格差异科目上。用于确定存货评估过账的存货冲抵科目。事务码WGR是用来重估工厂收货的,根据 计算出来的价格差异,把库存的调整过账分配给这个事务码中的总账科目。

nopicture的博客 348

简述angular中constant和$filter的用法

这里是修真院前端小课堂,每篇分享文从 【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】 八个方面深度解析前端知识/技能。 大家好,我是IT修真院深圳分院的韩鹏,一枚正直纯洁善良的前端程序员。 今天给大家分享一下,修真院官网JS任务7,深度思考中的知识点: ——简述angular中constant和$filter的用法. 1.背景...

IT修真院:初学者转行到互联网的聚集地 836

SAP BOM反查(可追溯值至顶级)

功能介绍:BOM层数在7层以内的(含7层)的物料,执行后都可以查询到顶级的BOM,逻辑很简单,后期如BOM层数增加,可自行增加查询逻辑。 *&---------------------------------------------------------------------* *& Report ZBOM_CHECK *&---------------------...

SAP阿狸 6060

简述angular 中constant和$filter的用法

大家好,我是IT修真院武汉分院第13期学员,一枚正直善良的web程序员。今天给大家分享一下:简述angular 中constant和$filter的用法angularJS可以通过constant(name,value)和value(name,value)对于创建服务也是很重要的。相同点是:都可以接受两个参数,name和value。区别:1.constant(name,value)可以将一个已经存在...

qq_41975545的博客 342

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Angular JS:服务与自定义指令

1.服务service 描述:可以这么来认为,服务service相当于是app提供给用户使用的全局变量 而服务存在的目的, 其实可以认为是对各个controller功能的一个扩展 说明: (1)在NG框架中,服务是一个名词。实在不能理解就替换成【NG全局变量】 (2)在NG框架中,因为controller的作用域问题,平级controller之间无法互相沟通,所以提出服务这一概念,不同的contr...

weixin_43187545的博客 333

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

genshin-wish-export 完整指南:3 步导出并可视化你的全部原神祈愿数据

genshin-wish-export 是一款免费的原神祈愿记录导出工具:一键拉取全部卡池的祈愿数据,在本地生成分布图表与统计,并支持导出 Excel 和 UIGF JSON,全程运行在你自己的电脑上。 ## 它到底能干什么 它把你在游戏里只能手动翻的"用了多少抽、离 5 星还差几抽",变成可看、可带走的数据: - **全量拉取并自动合并**:一次点击按分页拉完全部祈愿记录(新手、常驻、角色

gitblog_00542的博客 443

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Angularjs1.x 中的 constant, value

constant 常量constant 在 angularjs 中指的是定义的常量,在应用启动时创建且不可随意更改定义 constantangular.module('MyApplication') .constant('HELLO', 'hello world');value 变量value 在 angularjs 中指的是定义的变量,可以在任意修改

大事龙 5052

[AngularJS面面观] 21. 依赖注入 --- constant到底如何而来

在上一篇文章中,我们终于见到了angular中依赖注入的总体结构图。从这幅图中我们可以知道在angular内部是有两个注入器协同工作来实现我们习以为常的依赖注入特性的。 结合上图简单回顾一下angular依赖注入的组成和工作流程。 首先,在台面上的注入器名为实例注入器(Instance Injector),它里面含有一个名为实例缓存(Instance Cache)的字典对象,该缓存的作用是

不忘初心,好好沉淀 8751

AngularJS依赖注入 constant 常量注入组件

html> html> head> meta charset="UTF-8"> title>AngularJS依赖注入 constant 常量注入组件title> script type="text/javascript" src="../js/angular.js" >script> script> /* constant(

IT666DHW的博客 1185
上一篇: 什么是CSS Sprites?
下一篇: 如何阻止事件冒泡和默认行为?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值