例如我有一个角度表达式:
{{download.name}}
我想得到它的实际值而不是它的引用,即" demo.txt"。这个元素是这样生成的。它的值随着范围而变化。
<div ng-repeat="download in getDownloads()" />
当我写这样的东西时,价值是正确的。
<span class="input-group-addon" ng-model="name">{{openTokenPanel.name}}</span>
但如果我尝试在其他地方使用它,输出就是错误的。(我得到了#34; Aria2 WebUI&#34;)
modalScope.$download = function(){
var filename = modalScope.name;
console.log(filename);
};
我该怎么办? 欲获得更多信息。见https://github.com/ziahamza/webui-aria2 我正在修改这个项目。最后一段代码添加在&#34; js / libs / angularui-bootstrap.js&#34;中。休息符添加在&#34; index.html&#34;
中按钮是这样的:
<button class="btn btn-default btn-primary" id="download_now" ng-click="$download()">
Download Now!
</button>
我解决了这个问题,感谢DfKimera的建议:
在HTML块中查找ng-repeat里面的$ download函数被调用(可能是带有ng-click的下载按钮),修改它以包含&gt;下载变量,如下所示:ng-click = &#34; $下载(下载)&#34;
在我的情况下,我对我的代码进行了一些更改:
<button class="btn btn-default btn-primary" id="download_now" ng-click="$download(download)">
Download Now!
</button>
JS代码:
modalScope.$download = function(download){
var filename = download.name;
console.log(filename);
};
答案 0 :(得分:0)
您真正想要做的是修改对$download()
的调用,以便传递download
对象。这样,访问download.name
将产生相应的变量。
单独使用范围(modalScope
对象)没有可靠的方法,因为它只引用最后一个范围状态,而不是ng-repeat
的内部状态