vue日常学习,基本使用

简介: vue日常学习,基本使用

HTML:


<div id="app">
    <!-- 模版语法:{{表达式}} -->
    {{name}}
    <!-- v-text:innerHtml 渲染文本-->
    <div v-html="html"></div>
    <!-- v-text:innerText -->
    <div v-text="name"></div>
    <!-- v-on:绑定点击事件 ,简写: @ -->
    <button v-on:click="fun(123)">添加</button>
    <button @click="fun">删除</button>
    <!-- v-bind地址、什么的都一样的 -->
    <img v-bind:src="url" alt="" />
    <!-- 对于class的处理 -->
    <div :class="bool?'active':''" > 我们不一样</div>
    <!-- class简写,三元表达式,比较方便 -->
    <div :class="{active:bool}" > 我们都一样</div>
    <!-- 对于style的处理 -->
    <div :style="bool? 'color:#ff0000' : ''">是不一样</div>
    <div :style="{color:bool}? 'color:#ff0000' : ''">是不一样</div>
    <!-- v-model 获取input的值,默认input事件,change的话加个.lazy, nmuber转换为数字,-->
    <input type="text" v-model="name"/>
    <!-- v-for循环渲染 item为循环的名 , list为数组-->
    <!-- <div v-for="item in list">{{item}}</div> -->
    <!-- 添加了下标 -->
    <!-- <div v-for="(item,index) in list">{{index}}{{item}}</div> -->
    <!-- 加上id -->
    <div v-for="(item,index) in list">{{index}}{{item.id}}</div>
    <!-- key的作用,值唯一且不可变 ,推荐使用id,index仅在不在前面,中间修改时可用-->
    <!-- <div v-for="(item,index) in list" :key="index">{{index}}{{item.id}}
    <input type="text" />
    </div> -->
    <button @click="list.shift()">123456</button>
    <!-- v-if v-else v-else-if -->
    <!-- v-if 不经常用来切换 -->
    <div v-if="bool">if</div>
    <div v-else>eles</div>
    <!-- v-show 用来经常切换,标签页,-->
    <div v-show="bool">show</div>
    <button @click="bool=!bool">变</button>
    <!-- v-once 只加一次-->
    <!-- <div v-once>{{count}}</div> -->
    <div >{{count}}</div>
    <button @click="count++">++</button>
    <!-- v-pre 不解析花括号,是什么样就是什么样-->
    <div v-pre>{{count}}</div>
    <!-- v-cloak 页面加载时不见原始dom-->
    <!-- 这个一般放在最大的div上,防止刷新页面出现未渲染的样子,看到原始DOM  -->
    <div v-cloak></div>
  </div>

JS:


const {
    createApp,
    ref
    } = Vue;
    createApp({
    setup() {
      // const count = ref(0)
      const name = '王五'
      console.log(name);
      const fun = (i) => {
      console.log(i);
      }
      const html = ref('<s>关闭</s>')
      const url = ref('https://pic4.zhimg.com/80/v2-2bf48b6a57b45d129a0e2621c8049963_1440W.webp')
      const bool = ref(true)
      const list = ref([{id:1},{id:2},{id:3}])
      const count = ref(0)
      return {
      count,
      html,
      fun,
      name,
      url,
      bool,
      list,
      count
      }
    }
    }).mount('#app')

CSS:


<style>
    .active{
    color: red;
    }
  </style>
相关文章
|
2月前
|
JavaScript
Vue中如何实现兄弟组件之间的通信
在Vue中,兄弟组件可通过父组件中转、事件总线、Vuex/Pinia或provide/inject实现通信。小型项目推荐父组件中转或事件总线,大型项目建议使用Pinia等状态管理工具,确保数据流清晰可控,避免内存泄漏。
291 2
|
1月前
|
缓存 JavaScript
vue中的keep-alive问题(2)
vue中的keep-alive问题(2)
276 137
|
5月前
|
人工智能 JavaScript 算法
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
760 0
|
7月前
|
JavaScript
vue实现任务周期cron表达式选择组件
vue实现任务周期cron表达式选择组件
992 4
|
5月前
|
JavaScript UED
用组件懒加载优化Vue应用性能
用组件懒加载优化Vue应用性能
|
6月前
|
JavaScript 数据可视化 前端开发
基于 Vue 与 D3 的可拖拽拓扑图技术方案及应用案例解析
本文介绍了基于Vue和D3实现可拖拽拓扑图的技术方案与应用实例。通过Vue构建用户界面和交互逻辑,结合D3强大的数据可视化能力,实现了力导向布局、节点拖拽、交互事件等功能。文章详细讲解了数据模型设计、拖拽功能实现、组件封装及高级扩展(如节点类型定制、连接样式优化等),并提供了性能优化方案以应对大数据量场景。最终,展示了基础网络拓扑、实时更新拓扑等应用实例,为开发者提供了一套完整的实现思路和实践经验。
815 77
|
4月前
|
人工智能 JSON JavaScript
VTJ.PRO 首发 MasterGo 设计智能识别引擎,秒级生成 Vue 代码
VTJ.PRO发布「AI MasterGo设计稿识别引擎」,成为全球首个支持解析MasterGo原生JSON文件并自动生成Vue组件的AI工具。通过双引擎架构,实现设计到代码全流程自动化,效率提升300%,助力企业降本增效,引领“设计即生产”新时代。
401 1
|
4月前
|
JavaScript 安全
在 Vue 中,如何在回调函数中正确使用 this?
在 Vue 中,如何在回调函数中正确使用 this?
257 0
|
7月前
|
缓存 JavaScript 前端开发
Vue 基础语法介绍
Vue 基础语法介绍
|
5月前
|
JavaScript 前端开发 开发者
Vue 自定义进度条组件封装及使用方法详解
这是一篇关于自定义进度条组件的使用指南和开发文档。文章详细介绍了如何在Vue项目中引入、注册并使用该组件,包括基础与高级示例。组件支持分段配置(如颜色、文本)、动画效果及超出进度提示等功能。同时提供了完整的代码实现,支持全局注册,并提出了优化建议,如主题支持、响应式设计等,帮助开发者更灵活地集成和定制进度条组件。资源链接已提供,适合前端开发者参考学习。
463 17