vue 一个简单的项目 之一 首页 step 2

本文详细介绍了如何从IconFont平台选择图标并将其整合到项目中,包括下载、本地化、路径优化及通用样式提取等步骤,通过具体示例展示了代码优化过程。

iconfont 的使用与代码优化

在iconfont 上把想要的图标添加到购物车后,再添加到项目。然后在项目中下载到本地。如下图。

下载,解压后,有以下文件

    

我们在 src/assets/styles 下面,建立目录 iconfont, 然后将四个字体文件放进去

    

然后,将 iconfont.css 放入style 目录下. 要改一下,iconfont.css 里面的路径,如下。(第3,4,6,7行)

    

引入 iconfont.css , 因为很多页面要使用,因此,在mian.js 里面引入

整个Header.vue 代码

以上代码的优化。

优化一 通用的style的提取

注意,.header 中 background 颜色,最好设置为变量,保存起来,这样颜色风格,也比较好修改维护。

在style 目录下新建一个文件 variables.styl

   

在 Header.vue 中使用的方式

   

优化二 路径

注意上图 .styl 的串特别长

直接使用“~@” 表示src 目录【css 中可以这个】

    

优化三 给常用路径一个名字

就像‘@’ 代表src 一样,可以为一个常用路径 附一个名字

在build 目录下 webpack.base.conf 文件中,可见(第38行)

    

然后可以给它加一行:

    

那么,就可以去Header.vue 和 main.js 简化一部分代码了。【第7,8,9行】【第24行】

    

    

当然,修改了build 中文件后,要重启下服务。使用命令 npm run start 即可。

退出服务,提交代码即可。

### el-step 组件第一个节点未高亮显示的原因及解决方案 el-step 是 Element UI 框架中的一个组件,用于实现步骤条功能。当用户遇到 el-step 组件的第一个节点未高亮显示的问题时,通常与以下几个因素有关: #### 1. 当前步骤索引设置不正确 el-steps 和 el-step 的核心属性之一是 `active` 属性,它决定了当前激活的步骤索引。如果 `active` 属性值设置错误,可能导致第一个节点未被正确高亮。 ```vue <el-steps :active="activeIndex"> <el-step title="步骤一"></el-step> <el-step title="步骤二"></el-step> <el-step title="步骤三"></el-step> </el-steps> ``` 确保在 Vue 数据中正确设置了 `activeIndex`,例如: ```javascript data() { return { activeIndex: 0 // 表示第一个步骤被激活 }; } ``` 如果未正确设置 `activeIndex` 或其初始值大于 0,则会导致第一个节点未高亮[^4]。 #### 2. 样式覆盖问题 有时候,项目的全局样式或第三方库可能对 el-step 的默认样式进行了覆盖,导致即使步骤激活,颜色也未正常显示。可以通过检查以下 CSS 属性来确认是否存在样式冲突: - `.el-step__title.is-process`:表示当前激活步骤的标题样式。 - `.el-step__title.is-finish`:表示已完成步骤的标题样式。 - `.el-step__title.is-wait`:表示未完成步骤的标题样式。 如果发现样式被覆盖,可以尝试通过自定义样式修复: ```css .el-step__title.is-process { color: #409EFF !important; /* 设置激活步骤的颜色 */ } ``` #### 3. 数据绑定问题 如果步骤的状态依赖于动态数据(如后端返回的数据),需要确保数据格式正确且及时更新到视图。例如,某些情况下可能需要手动触发 `this.$forceUpdate()` 来强制刷新视图[^5]。 #### 4. 配置属性缺失 el-step 提供了多个配置属性,如 `status` 和 `process-status`,用于更精细地控制每个步骤的状态。如果未正确配置这些属性,可能会导致状态显示异常。例如: ```vue <el-step title="步骤一" :status="stepStatus"></el-step> ``` 确保 `stepStatus` 的值为正确的状态值(如 `'wait'`, `'process'`, `'finish'`, `'error'`)。 --- ### 示例代码 以下是一个完整的示例,展示如何正确配置 el-step 并解决第一个节点未高亮的问题: ```vue <template> <el-steps :active="activeIndex" finish-status="success"> <el-step title="步骤一" description="描述信息"></el-step> <el-step title="步骤二" description="描述信息"></el-step> <el-step title="步骤三" description="描述信息"></el-step> </el-steps> </template> <script> export default { data() { return { activeIndex: 0 // 确保初始化为 0 }; } }; </script> <style> /* 确保样式未被覆盖 */ .el-step__title.is-process { color: #409EFF !important; } </style> ``` --- ### 总结 第一个节点未高亮显示的主要原因包括 `active` 属性设置错误、样式覆盖、数据绑定问题以及配置属性缺失。通过检查上述几个方面并进行相应调整,可以有效解决问题。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值