我制作了一个Vue组件,该组件显示一个模式,询问用户是否要播放为' X'或者' O'。它应该能够通过v-on来实现这一点:click =' startComp(' X') - 但这不起作用,它是'抛出参考错误,我不明白为什么。任何帮助将不胜感激,因为我已经在这几天了...
我试图首先调用该函数的原因是因为我需要v-on:单击以将 this.modal 设置为false(从而删除模态并转换为' board')并将 this.marker 设置为其各自的值。而afaik,您只能在v-on中设置1个项目:点击。
Here is a forked version of my original Codepen for testing this.
**编辑 - 抱歉,这件事只是让我正确格式化代码。
<script type="text/x-template" id="modal-template">
<transition name="modal">
<div class="modal-mask">
<div class="modal-wrapper">
<div class="modal-container">
<div class="modal-body">
<slot name="body">
<div class='row'>
<div class="col-xs-2 select_marker"
id="SX"
v-on:click='compStart("X")'>X</div>
<div class="col-xs-8 select_title">
SELECT<span style='color:#00B16A'>MARKER</span>
</div>
<div class="col-xs-2 select_marker"
id="SO"
v-on:click='compStart("O")'>O</div>
</div>
</slot>
</div>
</div>
</div>
</div>
</transition>
compStart(marker) {
this.marker = marker;
this.showModal = false;
this.start('comp');
},
答案 0 :(得分:0)
因此,在将头撞到墙上3天之后,我终于想到了这一点。我猜模态不在Vue的目标元素内,所以不是v-on:click =&#39; compStart(&#34; X&#34;)&#39;它必须是v-on:click =&#39; game.compStart(&#34; X&#34;)&#39;。