这可能很简单,但我找不到合适的文档来解释如何克服我的问题,这里是:我有一个像这样的中继器......
<tr ng-repeat="thing in things">
<td>{{ thing.name }}</td>
<td>{{ thing.category }}</td>
<td>{{ thing.content }}</td>
<td>{{ thing.confirms }}</td>
<td>{{ thing.declines }}</td>
<td> <button ng-click="doSomething('{{ thing }}')">Do what we want</button></td>
</tr>
现在一切正常并符合预期。在doSomething
我编写的服务中的函数中,我希望将“事物”对象作为参数传递,我已将其转换为字符串以避免错误(稍后我将对其进行转换)。现在,当我将该对象输出到我的服务时,不会返回对象内容(尽管它们显示在呈现的 HTML 中)。传递给我的服务的是字符串“{{ thing }}”而不是对象值(所以我的 JSON.parse 失败)这是来自 Chrome 开发工具的呈现 HTML:
doSomething('{"name":"Debbie Harry","id":"526f9eb7e4b0b5062e14c1dc","category":"Basic Info","content":"Debbie Harry is cool","confirms":5,"declines":0}')
我将如何克服这一点?如何确保传递的是 JSON 对象而不是 AngularJS 花括号声明?
如果我不能很好地解释自己,请说明,我将重新提出我的问题。