Angularjs 是否将ng click参数对象键绑定到范围属性?

Angularjs 是否将ng click参数对象键绑定到范围属性?,angularjs,ui.bootstrap,Angularjs,Ui.bootstrap,我正在尝试将一个具有可变键的对象传递给ng click方法。在常规javascript中,您只需执行以下操作: var x = "fork"; var obj = {}; obj[x] = "three points" //{ fork: "three points" } 通常,要通过ng click发送对象,您需要设置一个对象文本作为参数 //in controller $scope.val = "red"; //in view <button ng-click="click( { i

我正在尝试将一个具有可变键的对象传递给ng click方法。在常规javascript中,您只需执行以下操作:

var x = "fork";
var obj = {};
obj[x] = "three points" //{ fork: "three points" }
通常,要通过ng click发送对象,您需要设置一个对象文本作为参数

//in controller
$scope.val = "red";
//in view
<button ng-click="click( { item: val} )"></button> 
//output is { item: "red" }


如何将作用域属性绑定到对象键?

您可以尝试以下方法:

<button ng-click="temp={};temp[key]=456;click(temp)"></button>


虽然它会在作用域中添加temp变量。

哦,对了,我忘了你可以在ng click指令中包含整个表达式,谢谢
<input type="text"     
       typeahead="i for i in data"
       typeahead-on-select="select( { {{i}}: 'something' } )"
       class="typeahead" />
<button ng-click="temp={};temp[key]=456;click(temp)"></button>