💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## 1.7.ID命名规范 ID命名规范是SPA单页面版强烈建议的,非SPA单页版也建议ID参考此规范来命名。 **总体命名规则xxxXxxXxx** - 第一个xxx &emsp; 模块名,比如用户模块`user` - 第二个Xxx &emsp; 功能描述,比如添加`Add` - 第三个Xxx &emsp; 元素类型,比如按钮`Btn` 例如页面是user.html,它的各个元素命名如下: **按钮的命名** ```html <!-- 命名规则:xxxXxxBtn --> <button id="userAddBtn" class="layui-btn">添加</button> <button id="userEditBtn" class="layui-btn">修改</button> <button id="userDelBtn" class="layui-btn">删除</button> ``` **表格的命名** ```html <!-- 命名规则:xxxTable --> <table id="userTable" lay-filter=""userTable"></table> <!-- 表格上方搜索表单,命名规则:xxxTbSearchForm,id和lay-filter是非必须的 --> <form class="layui-form" id="userTbSearchForm" lay-filter="userTbSearchForm"> <!-- 输入框部分省略... --> <!-- 搜索提交按钮命名规则:xxxTbSearch --> <button class="layui-btn" lay-filter="userTbSearch" lay-submit>搜索</button> </form> <!-- 表格操作列,命名规则:xxxTbBar --> <script type="text/html" id="userTbBar"> <a class="layui-btn" lay-event="edit">修改</a> <a class="layui-btn" lay-event="del">删除</a> </script> <!-- 表格其他复杂列,例如switch状态开关等,命名规则:xxxTbXxx --> <script type="text/html" id="userTbState"> <input type="checkbox" lay-filter="userTbStateCk" value="{{d.userId}}" lay-skin="switch" lay-text="正常|锁定" {{d.state==0?'checked':''}}/> </script> ``` **一个页面有多个表格的命名** ```html <!-- 命名规则:xxxXxxTable --> <!-- 例如这是一个用户订单记录表 --> <table id="userOrderTable" lay-filter=""userOrderTable"></table> <!-- 表格操作列,命名规则:xxxXxxTbBar --> <script type="text/html" id="userOrderTbBar"> <a class="layui-btn" lay-event="edit">修改</a> <a class="layui-btn" lay-event="del">删除</a> </script> ``` **表单弹窗的命名** ```html <!-- 页面层弹窗命名规则:xxxEditDialog,非页面层可以忽略script --> <script type="text/html" id="userEditDialog"> <!-- 表单命名规则:xxxEditForm --> <form id="userEditForm" lay-filter="userEditForm" class="layui-form model-form"> <!-- 输入框部分省略... --> <!-- 提交按钮命名规则:xxxEditSubmit --> <button class="layui-btn" lay-filter="userEditSubmit" lay-submit>保存</button> </form> </script> ``` **页面其他弹窗的命名** ```html <!-- 例如这是一个查看详情弹窗 --> <!-- 页面层弹窗命名规则:xxxXxxDialog,非页面层可以忽略script --> <script type="text/html" id="userInfoDialog"> <!-- 表单命名规则:xxxXxxForm --> <form id="userInfoForm" lay-filter="userInfoForm" class="layui-form model-form"> <!-- 输入框部分省略... --> <!-- 提交按钮命名规则:xxxXxxSubmit --> <button class="layui-btn" lay-filter="userInfoSubmit" lay-submit>保存</button> </form> </script> ``` 表单里面的input建议少用id,只用name,取input的值通过监听表单提交来取,用input通过`$('#xxxForm [name="xxx"]')`来写。 **其他元素ID命名** ```html <!-- 命名规则:xxxXxxXxx,第一个xxx是模块名,第二个Xxx是功能描述,第三个Xxx是元素类型 --> <!-- 例如角色选择的下拉框 --> <select id="userRoleSel"></select> <!-- 例如备注的输入框 --> <input id="userCommentsEdt" /> ``` **元素类型简写** 元素 | 简写 | 描述 --- | --- | --- 按钮类 | `Btn` | `<button>`、`.layui-btn`等 输入类的 | `Edt` | EditText的简写,`input`、`textarea`等 选择类的 | `Sel` | 下拉框、多选下拉框等 表格 | `Table` | `id="userTable"`、`id="userOrderTable"`等 表格附加组件 | `Tb` | `id="userTbBar"`、`id="userOrderTbBar"`等 弹窗 | `Dialog` | `id="userEditDialog`、`id="userInfoDialog"`等 表单 | `Form` | `id="userEditForm`、`id="userInfoForm"`等 表单提交按钮 | `Submit` | `id="userEditSubmit"`、`id="userInfoSubmit"`等 **页面的命名** ```html <!-- 命名格式:xxxApp --> <body id="userApp"></body> ``` > 以上规则只是规范,非必须要求