0
点赞
收藏
分享

微信扫一扫

angular指令link中操作传递进来的数据

GG_lyf 2021-09-21 阅读 34

为了解决资产数字过多造成的换行适配问题,准本写一个指令根据数字长度调整数字的字体大小
1 首先说一下指令里面的scope对象

scope = false

我们可以直接使用父控制器作用域对象上的变量,函数,他们共享一个数据模型,你修改指令里的模型数据,会反映到父作用域

scope = {}

= 双向绑定前缀
@ 单项绑定前缀
& 这是一个绑定函数方法的前缀
2 link函数
主要用与写指令的dom操作,有三个参数scope,element,attrs

【主要遇到的问题】:

在link函数里面找不到传过来的 text,每次打印都undifined,这怎么办,后来通过拿到element[0]发现innerText有值,但是当你打印的时候是传递过来那个值的初始值(0),(后来请求数据做了改变),很显然angularjs指令没有检测到这个改变,拿到的是最初的值
解决办法,我们手动检测这个值的变化呀
在link函数里面写 scope.$watch('text',function(oldValue,newValue){
可以拿到newValue最新值然后判断就可以
})

举报

相关推荐

0 条评论