0


未雨绸缪,前端小知识

写在前面,博主是个在北京打拼的码农,从事前端工作5年了,做过十多个大大小小不同类型的项目,最近心血来潮在这儿写点东西,欢迎大家多多指教。

  • 对于文章中出现的任何错误请大家批评指出,一定及时修改。
  • 有任何想要讨论和学习的问题可联系我:13287946835@139.com
  • 发布文章的风格因专栏而异,均自成体系,不足之处请大家指正。

大杂烩,希望能给各位带来一些思路和解决方法

本文关键字:Echarts、库、大屏

一、输入法输入时实时调用方法实现搜索

@input="searchFn"

  1. <input
  2. class="searchInput"
  3. type="text"
  4. @input="searchFn"
  5. v-model="searchName"
  6. placeholder="请输入名称关键字"
  7. />

二、使用position: relative;会脱离标准流吗

不会,他是相对于自己定位,使用top等只会让他在自己原本位置的基础上移动

所以大屏页面中单独的一些图表视图元素要使用position: relative;来调整自身位置

三、dataV库初步了解

dataV图表类型不算多,但有边框、各种动画效果、自动轮播表格,装饰用的动画,还有全屏用的组件,整体展示出来的效果比较花哨适合大屏,文档中对于可修改的属性说明比较明确,一般得搭配其他组件库使用(eachrts)

四、大屏常用库vue3-danmaku(滚动弹幕)

vue3-danmaku(滚动弹幕)为什么用这个,是因为大屏使用词云展示数据效果不好,一般大屏展示中给词云的展示面积太小,字体我们也会设置的很小,导致看不清

  1. <template>
  2. <vue-danmaku
  3. ref="danmakuRef"
  4. :top="8"
  5. @dm-over="dmOver"
  6. @dm-out="dmOut"
  7. isSuspend
  8. loop
  9. speeds="30"
  10. useSlot
  11. randomChannel
  12. style="width: 100%; height: 100%"
  13. v-model:danmus="danmus"
  14. >
  15. <template v-slot:dm="{ danmu }">
  16. <span :style="{ color: colors[Math.round(Math.random() * 20)] }">{{
  17. danmu.keyword
  18. }} </span>
  19. </template>
  20. </vue-danmaku>
  21. </template>
  22. <script>
  23. import vueDanmaku from "vue3-danmaku";
  24. export default {
  25. components: { vueDanmaku },
  26. data() {
  27. return {
  28. danmus: [],
  29. colors: [
  30. "#ffb980",
  31. "#2ec7c9",
  32. "#5ab1ef",
  33. "#b6a2de",
  34. "#d87a80",
  35. "#8d98b3",
  36. "#e5cf0d",
  37. "#97b552",
  38. "#95706d",
  39. "#dc69aa",
  40. "#07a2a4",
  41. "#9a7fd1",
  42. "#588dd5",
  43. "#f5994e",
  44. "#c05050",
  45. "#59678c",
  46. "#c9ab00",
  47. "#7eb00a",
  48. "#6f5553",
  49. "#c14089",
  50. "#409eff",
  51. ],
  52. };
  53. },
  54. methods: {
  55. getData() {
  56. //接口
  57. },
  58. aa() {
  59. this.$refs.danmakuRef.play()
  60. },
  61. bb() {
  62. this.$refs.danmakuRef.pause()
  63. },
  64. dmOver(val){
  65. console.log(val)
  66. },
  67. dmOut(val) {
  68. console.log(val)
  69. }
  70. },
  71. mounted() {
  72. // 文档 https://gitcode.com/mirrors/hellodigua/vue-danmaku/blob/vue3/README.md
  73. this.getData();
  74. },
  75. };
  76. </script>

五、全屏发现页面底部出现大面积留白

在大屏展示时,我们把网页开启全屏发现页面底部出现大面积留白,刷新页面后就正常了

此时我们需要监听窗口大小来实现刷新页面

  1. window.addEventListener('resize', () =>{
  2. window.location.reload();
  3. });

六、elementUI的多选框选择其中一个直接导致全部选中

查看data中的定义: checkedModule2Way2: "",

改为checkedModule2Way2: [],

七、elementUI的多选框点两次才能选中

发现是回显赋默认值时与多选框的lable值类型不一样导致(lable值是字符串类型,赋默认值时记得转换)

八、background-size设置无效

注意先后顺序

九、修改el-table表头颜色

  1. <style scoped>
  2. .flex-box >>>.el-table thead tr th{
  3. background: var(--mainColor);
  4. color: #fff;
  5. }
  6. </style>

十、关于初次搭建项目引发的思考

无论是web端还是h5端,我们都应该使用屏幕适配方案,常用的有pxtorem与flexible,这样不仅是方便我们调试,也尽量的避免了各种各样的兼容问题

关于数据加密,使用crypto-js库


本文转载自: https://blog.csdn.net/aZHANGJIANZHENa/article/details/133907454
版权归原作者 JianZhen✓ 所有, 如有侵权,请联系我们删除。

“未雨绸缪,前端小知识”的评论:

还没有评论