当前位置: 首页 > article >正文

硬通货用Deekseek做一个Vue.js组件开发的教程

 

安装 Node.js 与 Vue CLI

npm install -g @vue/cli  
vue create my-vue-project  
cd my-vue-project  
npm run serve  

通过 Vue CLI 可快速生成项目骨架,默认配置适合新手快速上手

目录结构

src/  
├── components/    # 存放组件文件  
│   └── HelloWorld.vue  
├── App.vue        # 根组件  
└── main.js        # 入口文件  

推荐按功能模块划分组件目录,提升可维护性

组件创建与注册

单文件组件(SFC)基础结构

<template>
  <div class="my-component">
    <h1>{{ title }}</h1>
    <button @click="handleClick">操作</button>
  </div>
</template>

<script>
export default {
  name: 'MyComponent',
  data() {
    return { title: '组件标题' };
  },
  methods: {
    handleClick() { console.log('事件触发'); }
  }
};
</script>

<style scoped>
.my-component { color: #333; }
</style>

<template>定义结构,<script>处理逻辑,<style scoped>限定样式作用域

全局注册与局部注册

  • 全局注册(适用于高频使用组件)‌;  

// main.js  
import MyComponent from '@/components/MyComponent.vue';
Vue.component('MyComponent', MyComponent);  

局部注册(适用于按需加载)

<script>
import MyComponent from '@/components/MyComponent.vue';
export default {
  components: { MyComponent }
};
</script>

全局注册后可在任意模板中调用,局部注册需在父组件中显式引入

组件通信

Props 数据传递(父→子)

<!-- 父组件 -->  
<ChildComponent :message="parentData" />  

<!-- 子组件 -->  
<script>
export default {
  props: {
    message: { type: String, required: true }
  }
};
</script>

自定义事件(子→父)

<!-- 子组件触发事件 -->  
<button @click="$emit('update-data', newData)">提交</button>  

<!-- 父组件监听事件 -->  
<ChildComponent @update-data="handleUpdate" />

进阶功能

插槽(Slot)实现内容分发

<!-- 父组件 -->  
<Modal>  
  <template v-slot:header>自定义标题</template>  
  <p>默认插槽内容</p>  
</Modal>  

<!-- 子组件 Modal.vue -->  
<div class="modal">  
  <slot name="header"></slot>  
  <slot></slot>  
</div>

生命周期钩子

export default {
  created() { console.log('组件实例已创建,数据未渲染'); },  
  mounted() { console.log('DOM 已挂载,可操作 DOM'); },  
  beforeDestroy() { console.log('组件销毁前清理资源'); }  
};

*常用钩子包括 createdmountedupdatedbeforeDestroy

最佳实践
  1. 组件设计原则

    • 单一职责‌:每个组件仅处理单一功能‌。
    • 可复用性‌:通过 propsevents 解耦逻辑‌。
    • 模块化‌:拆分大型组件为多个子组件‌。
  2. 样式隔离与复用

    • 使用 <style scoped> 避免样式污染‌。
    • 通过 @mixin 或 CSS 变量实现样式复用‌。

 提示:调试时可结合 Vue Devtools 查看组件层级与数据流‌

我用夸克网盘分享了「无需网络快速部署deepseek」。
链接:https://pan.quark.cn/s/1cc8de40d71b


http://www.kler.cn/a/574591.html

相关文章:

  • GCC RISCV 后端 -- C语言语法分析过程
  • C# OnnxRuntime部署DAMO-YOLO人头检测
  • 《基于WebGPU的下一代科学可视化——告别WebGL性能桎梏》
  • Unity 小功能
  • Linux 开发工具
  • 【微知】Mellanox驱动中to是什么?有哪些超时时间?(time out,心跳2s,reset 1分钟)
  • Docker的常用镜像
  • 如何将一台服务器的pip环境迁移到另一个机器?
  • MoE 架构:专家齐聚,智启未来 —— 解锁传统稠密模型的瓶颈
  • 某书x-s参数更新自动化获取密钥iv脚本
  • 网页制作11-html,css,javascript初认识のCCS样式列表(下)
  • Go学习笔记:基础语法6
  • 庭田科技携手西门子工业软件成功举办振动噪声技术研讨会
  • 从“0”开始入门PCB之(5)完结篇!--快速入门原理图DRC,PCB的符号与布局,2D与3D效果,PCB的图层和布线,PCB板框
  • 攻防世界WEB(新手模式)19-file_include
  • 机器视觉运动控制一体机在天地盖同步跟随贴合解决方案
  • 三数之和~
  • 快手,蓝禾,得物,优博讯,三七互娱,顺丰,oppo,游卡,汤臣倍健,康冠科技,作业帮25届春招内推
  • std::string的模拟实现
  • Windows 图形显示驱动开发-WDDM 3.2-本机 GPU 围栏对象(三)