【发布时间】:2020-12-24 05:04:06
【问题描述】:
我大致按照this article做了一个组件可拖动:
<template>
<div ref="draggableContainer" class="draggable-container">
<div class="draggable-header" @mousedown="dragMouseDown">
<slot name="dragger"></slot>
</div>
<slot></slot>
</div>
</template>
然后在我的Calculator.vue 组件中我有:
<template>
<Draggable class="calculator">
<input type="text" class="calculator-screen" slot="dragger" value="" />
<div class="calculator-keys">
<button type="button" class="operator" value="+">+</button>
<button type="button" class="operator" value="-">-</button>
<button type="button" class="operator" value="*">×</button>
<button type="button" class="operator" value="/">÷</button>
<button type="button" value="7">7</button>
<button type="button" value="8">8</button>
<button type="button" value="9">9</button>
<button type="button" value="4">4</button>
<button type="button" value="5">5</button>
<button type="button" value="6">6</button>
<button type="button" value="1">1</button>
<button type="button" value="2">2</button>
<button type="button" value="3">3</button>
<button type="button" value="0">0</button>
<button type="button" class="decimal" value=".">.</button>
<button type="button" class="all-clear" value="all-clear">AC</button>
<button type="button" class="equal-sign operator" value="=">=</button>
</div>
</Draggable>
</template>
两个组件以不同的方式使用slot,在draggable-maker 中作为标签,在计算器中作为属性。但是,由于使用了slots,这与 Vue 3 不兼容。这是我得到的错误:
有人可以建议我如何解决这个问题吗?
【问题讨论】:
标签: vue.js vuejs2 vue-component vuejs3 vue-composition-api