我正在实现一个功能,当我单击按钮时,某些文本将被复制。我不想显示文本,也不想弄乱我的布局。
按照本文的指导,我试图使用ngclipboard
和ng-hide
https://medium.com/@kris.stange2015/use-ngclipboard-with-an-angular-ng-repeat-directive-398d4eaf2c83
我的代码的工作原理与帖子类似
<button type="button"
class="button button--info"
ng-if="!some_iter.show"
ngclipboard
data-clipboard-target="#someTag{{$index}}"
ngclipboard-success="ctrl.onClipboardSuccess(e)"
ngclipboard-error="ctrl.onClipboardError(e)">Copy Invite Link</button>
<input class='input-hide' id="someTag{{$index}}" ng-value="some_iter.url"></input>
我遇到了他或她提到的确切问题,即隐藏input
时无法捕获该值。我尝试了工作方法,但弄乱了我的布局。我的问题:
如果我隐藏值,为什么它不起作用?据我所知,ng-hide
仅适用于CSS,为什么display: none
和visibility: none
不起作用?该组件仍然存在,对吧?
如果使用opacity: 0
,如何确保我的布局不被弄乱?基本上,我如何没有一个怪异的空白点,用户仍然可以以某种方式拖动和复制文本(这不是很关键,但我不喜欢它)
答案 0 :(得分:0)
想通了。无需处理输入字段,我们可以使用
将数据直接注入ngclipboard中。<button type="button"
class="button button--info"
ng-if="!some_iter.show"
ngclipboard
data-clipboard-text="{{some_iter.url}}"
ngclipboard-success="ctrl.onClipboardSuccess(e)"
ngclipboard-error="ctrl.onClipboardError(e)">Copy Invite Link</button>
我们可以删除
<input class='input-hide' id="someTag{{$index}}" ng-value="some_iter.url"></input>