2021/9/23 工作记录(惑)

小程序

路由接口的实现(page)

全部作为静态资源处理

组件

  1. 在components下 创建
;(function(global) {
  global.slideTip = {
    template: ` <div class="slide-tip-box" v-if="!isPCopen&&!isShowSlideTip">
     </div>`,
    data() {
      return {
        isShowSlideTip: ''
      }
    },
    computed: {
      isPCopen() {
        return this.isPC()
      }
    },
    created() {
      this.isShowSlideTip = storage.get('is_first_open_question')
    },
    methods: {
      knowTip() {
        this.isShowSlideTip = '1'
        storage.set('is_first_open_question', '1')
      }
    }
  }

  Vue.component('zl-debug', zlDebug) // 将该组件注册为全局组件
})(window)
  1. 在需要的page下导入
  <link rel="stylesheet" href="../widget/components/answersCard/index.css" />
  <script src="../widget/components/answersCard/index.js"></script>
  1. 使用
    必须加zl-
 <zl-answers-card
          :questions-list="questionsList"
          :exam-score="examInfo.exam_score"
          :is-show-score="isShowScore"
          @close-answers-card="closeAnswersCard"
          @answer-card-score="saveAnswerCardScore"
        ></zl-answers-card>
  1. 区分全局组件和局部组件的注册
// 全局组件
Vue.coponent('zl-video', window.zlVideo)

// 局部组件
let app = {
  components: {
    'zl-video': window.zlVideo
  }
}

css 规范

rem

1rem = 设置在根节点上font-size

    Vue.prototype.openFontSizeLimit = function() {
      win.setFontSize = function() {
        // 获取window 宽度
        // zepto实现 $(window).width()就是这么干的
        // var winWidth = window.innerWidth;

        var winWidth = document.body.offsetWidth
        var size = (winWidth / designWidth) * 100
        doc.documentElement.style.fontSize = size + 'px'
      }
      win.setFontSize()
}
语义化
其他
  • id应该为驼峰式命名 userName;
  • class只能为中划线text-success,有些老的浏览器不支持_。
文字行高

一般情况下不设置width、height,通过padding来撑+文字设置行高;

针对iphoneX安全区域

通过设置padding或者直接用div设置高度来撑高;

悬浮的盒子

如果有需要悬浮的盒子,不能让滚动元素成为他的父级,在ios上悬浮的盒子会跟着滚动;

position:fixed

面向用户端,禁止使用position:fixed,用absolute代替

font rem大小

禁止使用以奇数结尾,如:0.01rem

按钮要加上disabled属性

防止交互时,多次重复点击,弱网情况下,导致多次写入数据等问题

class中不能定义display:flex,

使用公共类flex-wrap、flex-center-wrap、flex-center替代

class一些属性必须带webkit
v-for属性的标签,必须有key属性
class类名不能使用驼峰命名,page-sound-xxx
使用 overflow-y:auto

需要添加 -webkit-overflow-scrolling:touch 来提高用户体验

vue

img加载错误
<img :src="imgUrl"  @error="handleError" alt=""/>
样式穿透

.vue 下的scss

.page-content {
  ::v-deep .kl-box {
    background-color: red;
  }
}

移动端调试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值