vue开发的时候,目录名、文件名、函数名、变量名、数据库字段等命名规范

在Vue开发中,函数名、文件名、目录名、变量名、数据库字段名的命名规范各有其特点,以下是根据Vue及JavaScript的命名习惯进行的详细解答:

在这里插入图片描述

分析

目录名

  • 通常使用kebab-case(短横线命名法),全部小写,并使用连字符分隔。
    • 示例:components/user-profile、views/dashboard。如果项目中使用Vue Router,文件夹的命名通常与路由路径保持一致。
  • 小驼峰命名法(camelCase)
  • 示例:- componentsDirectory

连字符命名法在目录结构看起来更清晰,特别是当目录名是由多个单词组成时,每个单词之间用连字符隔开,易于阅读和理解。小驼峰命名法在一些需要与 JavaScript 代码风格保持一致的情况下也可以使用,但对于一些不熟悉代码的人来说,可能连字符命名法在视觉上更友好。

文件名

  • 单文件组件(SFC):使用PascalCase(大驼峰命名法),并以.vue结尾。
    • 示例:UserProfile.vue、ShoppingCart.vue。
  • 普通JavaScript文件:
    • 如果是工具函数、配置文件等,使用kebab-case(短横线命名法)或camelCase(驼峰命名法)。
    • 示例:my-utils.js(使用短横线命名法)、apiUtils.js(使用驼峰命名法)。
  • 属于组件的.js文件,使用PascalCase(大驼峰命名法)。
    • 示例:MyComponent.js。
  • 其他文件(如CSS、LESS等):除.vue文件外,其他文件统一使用kebab-case(短横线命名法)。
    • 示例:my-component.less。

小驼峰命名法适用于在 JavaScript 代码内部主要使用的文件,而连字符命名法在文件名需要在 HTML(如在script标签的src属性中)或者其他对连字符更友好的环境中引用时比较方便。

函数名

  • Vue 组件内部的方法命名规范:以动词开头,使用小写驼峰式(camelCase)描述动作或状态。
    • 示例:getSomething()(获取某个东西)、updateValue()(更新一个值)、handleEvent()(处理一个事件)、formatName()(格式化一个名称)、isItemSelected()(判断一个项是否已选择)。
  • 全局函数(如果有):同样推荐使用驼峰命名法。
    • 例如,在一个 Vue 项目的工具函数库中,函数名可以是formatDate、calculateTotal等,这样可以使函数名在代码中清晰地展示其功能。

JavaScript 本身的函数命名习惯就是驼峰命名法,并且在 Vue 组件内部,这样的命名方式与其他 JavaScript 代码风格保持一致,易于阅读和理解。

变量名

  • 一般命名规范:主要遵循JavaScript的命名规范,通常使用camelCase(小驼峰命名法)。
    • 示例:userProfile、isLoading。在Vue组件的data、computed、methods等选项下的属性或方法命名也应遵循此规范。
  • 全局变量:采用大写与下划线命名规范

在 Vue 组件的数据属性(data选项)、计算属性(computed选项)和监听器(watch选项)中:使用小驼峰命名法(camelCase)。例如,userName、totalCount等。这与 JavaScript 的变量命名风格一致,方便在组件内部进行数据操作和逻辑处理。
在模板(template选项)中引用变量:同样使用小驼峰命名法。因为模板中的变量引用是与组件内部的 JavaScript 代码相关联的,保持一致的命名风格可以避免混淆。

数据库字段名

  • 命名规范:数据库字段名的命名通常取决于具体的数据库管理系统和团队的命名约定。在Vue项目中,当与后端进行数据交互时,需要确保字段名与后端接口保持一致。
  • 常见规范:使用有意义的名词或形容词来描述字段的功能或含义,避免使用单词缩写、不清晰的名字或过于简单的名字。在某些情况下,可能会使用下划线(_)来分隔多个单词,但这通常取决于具体的数据库命名约定。

推荐使用下划线命名法(snake_case)。例如,user_name、create_date等。在数据库领域,特别是关系型数据库中,下划线命名法是一种非常常见的命名风格。它使得字段名在 SQL 查询等操作中易于阅读和理解,并且可以避免因为大小写敏感等问题导致的错误。而且,当数据库字段名与后端代码(如 Python 的 Django 框架、Node.js 的 Sequelize 等)进行交互时,下划线命名法也更容易进行映射和处理。

json格式数据的键名

在JSON格式中,通常推荐使用 小写加下划线分隔(snake_case)或者 小写驼峰命名法(camelCase)来命名键。具体选择可以根据团队约定或使用的编程语言习惯:

  • snake_case(下划线分隔):
    • 示例:“parent_id”: “12345” 和 “user_id”: “abc123”
      很常见于后端系统,尤其是在数据库设计或配置文件中。这种风格在数据库字段或服务器端开发中应用较多,一些主流语言如Python、Ruby等也偏好这种命名方式。
  • camelCase(驼峰命名):
    • 示例:“parentId”: “12345” 和 “userId”: “abc123”
      比较适合前端和API设计,尤其是在JavaScript中更常见。驼峰命名在前端开发、JSON API、和一些主流的REST API中较为普遍,前后端兼容性也不错。

总结

综上所述,Vue开发中命名规范的总结如下:

  • 驼峰命名法(camelCase):主要用于函数名、普通JavaScript文件的命名(非组件)。
  • 大驼峰命名法(PascalCase):主要用于单文件组件(SFC)的命名。
  • 短横线命名法(kebab-case):主要用于目录名、其他类型文件的命名(如CSS、LESS等)。
  • 下划线(_):在变量名和数据库字段名中可能使用,但具体取决于团队的命名约定和数据库管理系统的命名规则。
  • 全部小写:通常用于目录名和某些特定类型文件的命名(如CSS类名,但需注意BEM命名法等特定规范)。
  • 请注意,这些命名规范并非绝对,实际项目中可能会根据团队的具体约定和项目的实际需求进行适当调整。

运用

结合前后端实际使用,采取:

  • 目录名:全小写,使用下划线分割
  • 文件名:全小写,使用下划线分割
  • 函数名:小驼峰法,开头字母小写
  • 类名:小驼峰法,开头字母小写
  • 变量名:小驼峰法,开头字母小写,全局变量等小部分情况考虑全大写
  • 字段名:全小写,使用下划线分割
  • json键:全小写,使用下划线分割

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/883275.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mac电脑设置chrome浏览器语言切换为日语英语等不生效问题

在chrome中设置了语言,并且已经置顶了,但是不生效,在windows上直接有设置当前语言为chrome显示语言,但是mac上没有。 解决办法 在系统里面有一个单独给chrome设置语言的: 单独给它设定成指定的语言,然后重…

【每日一题】LeetCode - 判断回文数

今天我们来看一道经典的回文数题目,给定一个整数 x ,判断它是否是回文整数。如果 x 是一个回文数,则返回 true,否则返回 false。 回文数 是指从左往右读和从右往左读都相同的整数。例如,121 是回文,而 123 …

Spring Boot整合Stripe订阅支付指南

在当今的在线支付市场中,Stripe 作为一款一体化的全球支付平台,因其易用性和广泛的支付方式支持,得到了许多企业的青睐。本文将详细介绍如何在 Spring Boot 项目中整合 Stripe 实现订阅支付功能。 1.Stripe简介 Stripe 是一家为个人或公司提…

全桥PFC电路及MATLAB仿真

一、PFC电路原理概述 PFC全称“Power Factor Correction”(功率因数校正),PFC电路即能对功率因数进行校正,或者说是能提高功率因数的电路。是开关电源中很常见的电路。功率因数是用来描述电力系统中有功功率(实际使用…

【GESP】C++一级练习BCQM3145,奇数求和

一级知识点for循环分和支语句if的应用的练习题。难度不大,综合性略微提升,感觉接近但略低于一级真题水平。 题目题解详见:https://www.coderli.com/gesp-1-bcqm3145/ https://www.coderli.com/gesp-1-bcqm3145/https://www.coderli.com/ges…

springboot073车辆管理系统设计与实现(论文+源码)_kaic.zip

车辆管理系统 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了车辆管理系统的开发全过程。通过分析车辆管理系统管理的不足,创建了一个计算机管理车辆管理系统的方案。文章介绍了车辆管理系统的系统…

HTML标签汇总详解

一、前言 HTML 标签是用于定义网页内容结构和表现形式的标记。每个标签都有特定的含义和用途,通过不同的标签组合,可以构建出丰富多彩的网页。 二、标签的表现形式 2.1 单标签与双标签 根据标签的写法不同,可以将标签分为单标签和双标签。…

大数据-190 Elasticsearch - ELK 日志分析实战 - 配置启动 Filebeat Logstash

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

为微信小程序换皮肤之配置vant

微信小程序自带的控件虽然具有很好的通用性和简洁性,但在面对一些复杂的交互场景和个性化的设计需求时,可能会显得力不从心。其功能的相对基础使得开发者在实现诸如多步骤复杂表单提交、实时数据交互与可视化展示、高度定制化的界面布局等方面&#xff0…

vue3 选中对话框时,对话框右侧出一个箭头

先看下做出的效果&#xff1a; html代码&#xff0c;其中listPlan.records是后台拿到的数据进行遍历 <template><ul class"list"><li style"height: 180px;width: 95%":key"index"v-for"(item, index) in listPlan.record…

任务看板是什么?如何选择合适的任务看板工具?

一、任务看板是什么&#xff1f; 任务看板是一种可视化的项目管理工具&#xff0c;它通常以板状的形式呈现&#xff0c;将任务以卡片的形式展示在不同的列中&#xff0c;每一列代表任务的不同状态。例如&#xff0c;待办事项、进行中、已完成等。任务看板能够帮助团队成员清晰…

Android--简易计算器实现

以下实验是利用逍遥模拟器搭建的简易计算器页面 对现有功能说明&#xff1a;可实现双目运算和开方单目运算&#xff1b; 待改进&#xff1a;需要实现表达式的计算&#xff1b;以及负数参与运算&#xff1b; //XML代码<?xml version"1.0" encoding"utf-8&q…

排序(一)插入排序,希尔排序,选择排序,堆排序,冒泡排序

目录 一.排序 1.插入排序 2.希尔排序 3.选择排序 4.堆排序 5.冒泡排序 二.整体代码 1.Sort.h 2.Sort.c 3.test.c 一.排序 1.插入排序 插入排序基本思想:把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中&#xff0c;直到所有的记录插入完为 止…

ubuntu20.04上使用 Verdaccio 搭建 npm 私有仓库

安装nvm 首先安装必要的工具&#xff1a; apt update apt install curl下载并执行nvm安装脚本&#xff1a; curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash添加环境变量&#xff08;如果安装脚本没有自动添加&#xff09;。编辑 ~/.bash…

mysql建表

作业要求&#xff1a; 根据以下需求完成图书管理系统数据库及表设计&#xff0c;并建库建表&#xff0c;并截图创建表的详细信息(desc 表名),不用添加数据 1. 用户表: 字段: 姓名&#xff0c;用户名&#xff0c;密码&#xff0c;电话&#xff0c;住址&#xff0c;专业及年级…

命名空间std, using namespace std

命名空间std&#xff0c;using namespace std 在标准C以前&#xff0c;都是用#include<iostream.h>这样的写法的&#xff0c;因为要包含进来的头文件名就是iostream.h。标准C引入了名字空间的概念&#xff0c;并把iostream等标准库中的东东封装到了std名字空间中&#x…

系统设计-通用用户权限管理系统

通用用户权限管理系统 一、系统安全二、登录授权三、系统内部安全1. 相关实体1.1 实体关系(ER)2. 菜单权限3. 接口权限3.1 权限获取3.2 接口调用鉴权4. 数据权限四、其他一个没有权限控制的系统,是非常不安全的。 在日常业务运营的系统中台,基本都会存在用户的菜单权限控制,…

【华为路由】OSPF多区域配置

网络拓扑 设备接口地址 设备 端口 IP地址 RTA Loopback 0 1.1.1.1/32 G0/0/0 10.1.1.1/24 RTB Loopback 0 2.2.2.2/32 G0/0/0 10.1.1.2/24 G0/0/1 10.1.2.1/24 RTC Loopback 0 3.3.3.3/32 G0/0/0 10.1.2.2/24 G0/0/1 10.1.3.1/24 RTD Loopback 0 4.4.4…

与ai聊我的代码架构

以包目录结构模块&#xff0c;以*.py脚本收纳模块。 (笔记模板由python脚本于2024年10月25日 18:39:10创建&#xff0c;本篇笔记适合编程基础的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网&#xff1a;https://www.python.org/ Free&#xff1a;大咖免费“圣经”教程《…

在线教育(培训+考试)/企业培训-企业培训平台-企业培训平台系统-企业内部培训系统-在线教育-Java语言开发

介绍 企业培训平台支持企业培训考试全流程&#xff0c;在线学习、在线考试&#xff0c;成熟的企业培训考试解决方案&#xff0c;充分满足企业培训需求。 独立部署&#xff0c;仅内部员工登录使用&#xff0c;稳定、安全、高效&#xff0c;满足企业、政府、教育行业的各种在线学…