如何在 nuxt 中使用 tailwindcss 过渡?
Posted
技术标签:
【中文标题】如何在 nuxt 中使用 tailwindcss 过渡?【英文标题】:How to use tailwindcss transitions in nuxt? 【发布时间】:2021-05-28 11:50:22 【问题描述】:所以我试图在我的 nuxt 应用程序中使用 tailwindcss 转换,我想基本上使用 vue 转换提供的类名来动画模式
这是我的 Modal.vue 文件代码
<template>
<!-- This example requires Tailwind CSS v2.0+ -->
<transition
name="modal"
enter-class="ease-out duration-300 opacity-0"
enter-to-class="opacity-100"
leave-class="opacity-100"
leave-to-class="ease-out duration-200 opacity-0"
>
<div class="fixed z-10 inset-0 overflow-y-auto">
<div
class="flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0"
>
<!--
Background overlay, show/hide based on modal state.
Entering: "ease-out duration-300"
From: "opacity-0"
To: "opacity-100"
Leaving: "ease-in duration-200"
From: "opacity-100"
To: "opacity-0"
-->
<div
class="fixed inset-0 transition-opacity"
aria-hidden="true"
@click="handleCloseModal"
>
<div class="absolute inset-0 bg-gray-500 opacity-75"></div>
</div>
<!-- This element is to trick the browser into centering the modal contents. -->
<span
class="hidden sm:inline-block sm:align-middle sm:h-screen"
aria-hidden="true"
>​</span
>
<!--
Modal panel, show/hide based on modal state.
Entering: "ease-out duration-300"
From: "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"
To: "opacity-100 translate-y-0 sm:scale-100"
Leaving: "ease-in duration-200"
From: "opacity-100 translate-y-0 sm:scale-100"
To: "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"
-->
<div
class="inline-block align-bottom bg-white rounded-lg text-left overflow-hidden shadow-xl transform transition-all sm:my-8 sm:align-middle sm:max-w-lg sm:w-full"
role="dialog"
aria-modal="true"
aria-labelledby="modal-headline"
>
<div class="bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4">
<div class="sm:flex sm:items-start">
<div
class="mx-auto flex-shrink-0 flex items-center justify-center h-12 w-12 rounded-full bg-red-100 sm:mx-0 sm:h-10 sm:w-10"
>
<!-- Heroicon name: outline/exclamation -->
<svg
class="h-6 w-6 text-red-600"
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke="currentColor"
aria-hidden="true"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-
d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"
/>
</svg>
</div>
<div class="mt-3 text-center sm:mt-0 sm:ml-4 sm:text-left">
<h3
class="text-lg leading-6 font-medium text-gray-900"
id="modal-headline"
>
Deactivate account
</h3>
<div class="mt-2">
<p class="text-sm text-gray-500">
Are you sure you want to deactivate your account? All of
your data will be permanently removed. This action cannot be
undone.
</p>
</div>
</div>
</div>
</div>
<div class="bg-gray-50 px-4 py-3 sm:px-6 sm:flex sm:flex-row-reverse">
<button
type="button"
class="w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-red-600 text-base font-medium text-white hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm"
@click="handleCloseModal"
>
Deactivate
</button>
<button
type="button"
class="mt-3 w-full inline-flex justify-center rounded-md border border-gray-300 shadow-sm px-4 py-2 bg-white text-base font-medium text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 sm:mt-0 sm:ml-3 sm:w-auto sm:text-sm"
>
Cancel
</button>
</div>
</div>
</div>
</div>
</transition>
</template>
<script>
export default
methods:
handleCloseModal()
this.$emit("close-modal");
;
</script>
我尝试通过将其添加到名称中来处理常规转换并且它有效,但这似乎有问题
提前感谢好心人
【问题讨论】:
【参考方案1】:使用“enter-active-class”代替“enter-class” 这是对我有用的解决方案:
<transition
enter-active-class="duration-300 ease-out opacity-0"
enter-to-class="opacity-100"
leave-active-class="duration-200 ease-in"
leave-class="opacity-100"
leave-to-class="opacity-0"
>
【讨论】:
【参考方案2】:所以我自己想通了,以某种方式将持续时间更改为进入课堂使其正常工作。
【讨论】:
以上是关于如何在 nuxt 中使用 tailwindcss 过渡?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 vercel zeit 上使用 Tailwindcss 2.0 部署 nuxt.js 项目
Nuxt 出现错误:无法解析“@tailwindcss/base”
使用 create-nuxt-app 时已弃用的软件包 Tailwindcss