欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 名人名企 > Vue3 小功能记录:密码的显示与隐藏功能

Vue3 小功能记录:密码的显示与隐藏功能

2025/7/8 18:09:31 来源:https://blog.csdn.net/m0_63779088/article/details/147460393  浏览:    关键词:Vue3 小功能记录:密码的显示与隐藏功能

Vue3 小功能记录:密码的显示与隐藏功能


步骤一:创建组件

src/components 目录下创建一个新的组件文件 PasswordToggle.vue

<template><div class="password-toggle"><input :type="inputType" v-model="password" placeholder="请输入密码" /><button @click="togglePasswordVisibility">{{ buttonLabel }}</button></div>
</template><script>
import { ref, computed } from 'vue';export default {setup() {// 定义响应式数据const password = ref('');const isPasswordVisible = ref(false);// 计算属性:动态切换输入框类型const inputType = computed(() => (isPasswordVisible.value ? 'text' : 'password'));// 计算属性:动态切换按钮文本const buttonLabel = computed(() => (isPasswordVisible.value ? '隐藏' : '显示'));// 方法:切换密码显示状态const togglePasswordVisibility = () => {isPasswordVisible.value = !isPasswordVisible.value;};// 返回数据和方法供模板使用return {password,isPasswordVisible,inputType,buttonLabel,togglePasswordVisibility,};},
};
</script><style scoped>
.password-toggle {display: flex;align-items: center;
}input {margin-right: 10px;padding: 5px;
}button {padding: 5px 10px;cursor: pointer;
}
</style>

步骤二:在主应用中使用组件

打开 src/App.vue 文件,将 PasswordToggle 组件引入并使用:

<template><div id="app"><h1>密码显示与隐藏示例</h1><PasswordToggle /></div>
</template><script>
import PasswordToggle from './components/PasswordToggle.vue';export default {components: {PasswordToggle,},
};
</script><style>
#app {font-family: Avenir, Helvetica, Arial, sans-serif;text-align: center;color: #2c3e50;margin-top: 60px;
}
</style>

代码解析
  1. 组合式 API
    • 使用 ref 定义响应式数据 passwordisPasswordVisible
    • 使用 computed 定义计算属性 inputTypebuttonLabel,根据 isPasswordVisible 的值动态返回输入框类型和按钮文本。
  2. 模板部分
    • input 元素的 type 属性绑定了 inputType 计算属性,根据 isPasswordVisible 的值动态切换为 'text''password'
    • button 元素的文本绑定了 buttonLabel 计算属性,根据 isPasswordVisible 的值动态显示 '显示''隐藏'
    • button 元素的 @click 事件绑定了 togglePasswordVisibility 方法,用于切换 isPasswordVisible 的值。
  3. 方法部分
    • togglePasswordVisibility 是一个简单的方法,用于切换 isPasswordVisible 的值。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词