vue基础操作(vue基础)

想到多少写多少把,其他的想起来了在写。也写了一些css的

input框的双向数据绑定

html

复制代码
     <input value="123456" type="text" v-model="account" @input="accou" class="bottom-line bottom" placeholder="请输入账号">

js

复制代码
const account = ref('')
function accou(event) {
  account.value = event.target.value;
  console.log(account.value, '账号');
}

input点击出现框

禁用输入框(input)点击时出现边框效果

复制代码
input:focus {
    outline: none;
}

input在上面写搜索图表

图标左边

复制代码
<template>
  <input class="search-input" placeholder="Search...">
</template>

<style>
.search-input {
  background-image: url('/path/to/search-icon.svg'); /* 指向你的搜索图标 */
  background-position: right 10px center; /* 调整图标位置 */
  background-size: 20px; /* 调整图标大小 */
  background-repeat: no-repeat;
  padding-right: 35px; /* 确保文本不会覆盖图标 */
}
</style>

图标右边

vue移动端页面双击放大问题

将meta代码

复制代码
<meta name="viewport" content="width=device-width,initial-scale=1.0">

修改成为

复制代码
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />

vue双边距问题

复制代码
 <style>
    *{
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }
  </style>

css渐变(拓展)

线性渐变(Linear Gradient)

线性渐变是一种在一条直线上从一个颜色过渡到另一个颜色的渐变效果。

复制代码
/* 从上到下的垂直渐变 */
.gradient {
    background: linear-gradient(to bottom, #ffcccc, #ff6666);
}

/* 从左上到右下的对角线渐变 */
.gradient {
    background: linear-gradient(to bottom right, #ffcccc, #ff6666);
}
径向渐变(Radial Gradient)

径向渐变是一种从一个中心点向周围辐射渐变的效果。

复制代码
/* 从中心向外的径向渐变 */
.gradient {
    background: radial-gradient(circle, #ffcccc, #ff6666);
}

/* 从左上角向右下角的径向渐变 */
.gradient {
    background: radial-gradient(ellipse at top left, #ffcccc, #ff6666);
}

使用本地存储为什么会变成object呢?

在Vue 3中,当你使用localStorage.setItem('authToken', res)时,如果res是一个JavaScript对象,它会被转换成字符串并存储在localStorage中。但是,如果res本身就是一个对象,那么它会被转换成字符串并存储,这可能会导致存储的是[object Object],而不是预期的对象内容。

复制代码
localStorage.setItem('authToken', JSON.stringify(res));

复制代码
const authToken = JSON.parse(localStorage.getItem('authToken'));

vue3页面跳转

命令

npm install vue-router@4
yarn add vue-router@4

复制代码
<script setup>
import { useRouter } from 'vue-router';

const router = useRouter();

const navigateToHome = () => {
  router.push('/home'); // 使用 router.push 方法跳转到首页
};
</script>

<template>
  <button @click="navigateToHome">Go to Home</button>
</template>

console.log(route.path); // 打印当前路由的路径

复制代码
// 动态路由参数
router.push({ name: 'user', params: { userId: '123' } });

// 查询参数
router.push({ path: 'register', query: { plan: 'private' } });
相关推荐
qq_177767371 分钟前
React Native鸿蒙跨平台自定义复选框组件,通过样式数组实现选中/未选中状态的样式切换,使用链式调用替代样式数组,实现状态驱动的样式变化
javascript·react native·react.js·架构·ecmascript·harmonyos·媒体
web打印社区4 分钟前
web-print-pdf:突破浏览器限制,实现专业级Web静默打印
前端·javascript·vue.js·electron·html
RFCEO24 分钟前
前端编程 课程十三、:CSS核心基础1:CSS选择器
前端·css·css基础选择器详细教程·css类选择器使用方法·css类选择器命名规范·css后代选择器·精准选中嵌套元素
烬头88211 小时前
React Native鸿蒙跨平台采用了函数式组件的形式,通过 props 接收分类数据,使用 TouchableOpacity实现了点击交互效果
javascript·react native·react.js·ecmascript·交互·harmonyos
Amumu121381 小时前
Vuex介绍
前端·javascript·vue.js
We་ct1 小时前
LeetCode 54. 螺旋矩阵:两种解法吃透顺时针遍历逻辑
前端·算法·leetcode·矩阵·typescript
2601_949809591 小时前
flutter_for_openharmony家庭相册app实战+相册详情实现
javascript·flutter·ajax
qq_177767371 小时前
React Native鸿蒙跨平台通过Animated.Value.interpolate实现滚动距离到动画属性的映射
javascript·react native·react.js·harmonyos
2601_949833391 小时前
flutter_for_openharmony口腔护理app实战+饮食记录实现
android·javascript·flutter
2601_949480061 小时前
【无标题】
开发语言·前端·javascript