AngularJS:使用变量值创建新的范围变量名称

时间:2013-08-12 13:29:46

标签: angularjs

我想使用传递给指令属性的变量值创建一个新的范围变量。举个例子,假设我们有一个像这样的简单指令:

<div testme field="fieldval"></div>

.directive("testme", function () {
    return {
        template: "<div id='testme'></div>",
        link: function (scope,elem, attrs){
            $("#testme").html("Hello "+attrs.field);
        }
    }
})

输出当然是'field'属性的值:

Hello fieldval

但是,我想要做的是创建一个名为$ scope.fieldval的新范围变量,其中fieldval实际上是传递到属性'field'的值

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

找到答案:真的很明显!!

scope[attrs.field] = "Some value";

答案 1 :(得分:1)

根据我的评论,这是一名傻瓜:

http://plnkr.co/edit/FVm1PR0KPImp7pajdCN3?p=preview