18-12-10

253 阅读2分钟

vue生态的移动ui库vux,vant

vux.li/

mpvue框架富文本解析器

mpvue-wxParse

微信公众号中的H5页面是怎样炼成的

www.jianshu.com/p/fb731213b…

微信公众号H5页面JS-SDK详解

cloud.tencent.com/developer/a…

淘宝触屏版,页面大致结构

  1. body: height:100%
  2. page-container(#app,vue根元素): position:static; height: 100%; pdtop:...; pdbottom:...; 这里限制了下一级的高度
  3. sc-htoDjs gsXFBA: position:relative; height: 100%; width: 100%; fixed的header和footer都放在这个元素中,超长引起scroll的元素也是其子元素
<too-long-scroll style="min-height:100%;"></too-long-scroll>
<fixed-bottom></fixed-bottom>

safari中,如果给上面的3添加overflow:auto,就会造成scroll卡顿的效果,只能添加-webkit-overflow-scrolling: touch;属性加以解决,但是这个属性会造成橡皮筋效果遮盖fixed底部,scroll卡死等bug
不加overflow:auto,那么获取元素的scrollTop则会始终为0,只能用getBoundingClientRect做判断 在safari上3上添加的touch监听无法监听发生在超长元素上的事件,会造成页面上半部分有相应,最底下没相应的bug,只能把事件添加在window上加以解决(详见17mall项目的themes页)

原生js的事件,只能用event参数接受默认事件

input标签的required="required"

带有这个属性的input,无值表单提交的话,会默认弹出提示

github.com/lx4r/markdo…

node的全局变量process.env

可以在任何node环境中得到,包括webpack,vue-cli打包的页面 所以在vue-cli项目的config中有

export const apiPath= 
	process.env.NODE_ENV=== 'production'? pro_api: dev_api;

会根据npm dev或build命令导出不同的内容

vue中子组件watch来自props的数据,父组件对应的属性变化,watch无响应

如果watch的是非对象属性,那么父组件中属性变化,watch都会检测到 如果watch的是对象中的属性,那么那么父组件中该属性必须是created之前就已经声明的

加快vue项目的开发速度

juejin.cn/post/684490…

node调用c/c++模块(node也可以调用python脚本)

www.cnblogs.com/andrewwang/…

mongodb 存储经纬度以及查询

svg分组动作

在svg嵌套结构中,只有最外层的svg标签可以添加transfrom,内部svg标签添加transfrom也没有效果,只能跟随最外层svg一起, 解决的办法就是用<g>标签嵌套一层, 在<g>标签上添加transform

vue中采用vuex请求数据,分发数据架构的缺点

采用vuex请求数据,分发数据,这种架构会先搭建dom骨架,然后组件中以computed来接收初始数据再填充,这样做的缺点就在于,组件在mounted时,数据并没有填充,导致父元素在mounted中获取关于节点的信息都是错误的例如 this.$el.clientHeight。 解决的办法是,提交数据填充回调给store,再store异步取到数据,commit后,执行回调,回调方法内容要嵌套在this.$nextTick中