kbone + vue 问题集合

kbone + vue 问题集合,第1张

使用kbone开发的微信小程序,只需要做稍微的修改就可以用到 web 端和 qq 小程序,很方便。

因为我之前的项目工程化程度很高,所以在刚开始用的时候因为惯性思维遇到了一些问题。

在 kbone + vue 的项目中可以使用 vue-router,但是web用一个router文件,小程序的 router 要另写。

我们在官方给出的 vue 项目模版的基础上做了一些目录调整:

现在我们要新增一个页面,文章详情页面, /article/:id ,首先我们需要在 src/article/mp/mainmpjs 中添加路由:

这里要注意:

tabbar 的配置主要写在 miniprogramconfigjs 中的 generate 属性里:

这里要注意:

所有 tabbar 的页面在注册路由时,需要有一个 / 路径,比如,我们把 article 页面作为一个 tab 页,那么我们需要改写一下注册的路由写法:

因为在微信小程序中不能直接使用 axios ,需要用 wxrequest ,而 web 端不能用 wxrequest ,所以我们需要找一个在 web 端和小程序上都能进行正常网络请求的方案。这里我们采用了 axios + adapter ,即 axios-miniprogram-adapter 。

使用的时候注意做一下环境判断:

微信小程序和qq小程序都可以用官方推荐的 rpx 做适配,我们要做的是对 web 端做一下兼容。

我们可以在 webpack 中的 sass-loader 里写一个全局变量 $isMini 做环境的区分,然后我们就可以写一个转换设计稿尺寸的方法,在这个方法里借助前面注册的变量进行尺寸转换(假设设计稿是 750px 宽的):

这里要注意的是 rpx 和 px 的转换关系,以 iphone6 为例: 750rpx = 375px。

微信小程序也支持 rem,设置的时候需要在 miniprogramconfigjs 的 global 字段中配置:

因为我们用的是 sass,而官方模版用的是 less,这里就顺便提一下,如果要用 sass,记得要在 build 目录下的各个 webpack 文件中进行对应的 loader 配置哦。

这个库可以在小程序和 web 端都能正常使用。

要注意的是使用的时候,不要忘记引入样式文件哦:

刚接触小程序的朋友还可以看一下微信原生组件的使用,因为 kbone-ui 的文档写的不是很详细,有些还是结合原生组件的文档好理解一点。

包括内置组件的使用,也可以结合原生组件的文档使用。

微信小程序现在支持单页面自定义导航,但是 kbone 如果要自定义导航,所有页面的导航都需要自己写。

导航条分为两部分,statusbar(显示时间的部分)和 titlebar (标题栏)。

statusbar 的高度:

titlebar 的高度:

导航条的高度:

如果是用在微信小程序上,那么现在这两个 api 的使用时机不需要特别注意,但如果是同时要用在qq小程序上,就需要注意使用的时机啦,如果直接在计算属性或者 created 中使用会出现报错,取不到内容的情况。

我是在created 中用了 settimeout 延迟使用这两个 api来解决这个问题的。

getMenuBarRect 这个方法是参考了网上找到的一个作者的方法,做了点修改,修改后可以正常使用,但是有个问题,因为 systeminfo 一开始取不到值,会用默认值,后来取到正确值时自定义头部的高度会有个突变,就是会跳一下。这个还没有优化。

比如,自定义分享内容的path要写全;

appid在微信小程序里叫appid,在qq小程序配置里叫qqappid;

微信小程序可以只设置宽度不设置高度,这样不会变形;

qq小程序只设置宽度不设置高度,会显示不出来,需要加属性 mode="widthFix" ;

页面的下拉刷新、加载中提示、上拉加载更多等配置需要在miniprogramconfigjs 里配置;

全局滚动事件也需要先配置,才能用 windowaddEventListener('scroll', () => {})

而且要取到 scrolltop 要用 documentbody$$getBoundingClientRect ;

总而言之呢就是多看文档、仔细看文档啦。

windowopen相当于 navigateTo,页面打开方式为 open;

windowlocationhref相当于redirectTo,页面打开方式为 jump;

不可否认它确实有很多方便的地方,但是在样式方面和组件支持方面简直令人抓狂。另外,编译速度和开发者工具都很慢。真的是一言难尽。今天又是修bug的一天,修到吐。

可以用。axios断了网还可以用,Axios,是一个基于promise的网络请求库,作用于nodejs和浏览器中,它是 isomorphic 的(即同一套代码可以运行在浏览器和nodejs中)。在服务端它使用原生nodejs >

1HTML

知识要点:web工作原理、HTML4及HTML5、常见标签、相对路径与绝对路径、HTML5标签

2CSS+布局

知识要点:CSS基本语法、基本选择器、复合选择器、背景、盒子模型、精灵图、常见网页布局、浮动定位、Flex布局、响应式布局、移动端适配、网页动画、CSS3新特性、Less预处理器

3ECMA基础

知识要点:ECMA基本语法、数据类型、运算符、分支结构、循环结构、函数、常见内置对象的属性和方法、Array、Math、Date、String

4DOM

知识要点:DOM模型、节点类型、节点的基本 *** 作、JS *** 作样式表、克隆节点、获取坐标位置、获取元素尺寸、节点的各种属性和方法。

5BOM+jQuery

知识要点:History、Location、Navigate、定时器、线程、事件循环、web工作原理、性能优化、事件对象、正则表达式、jQuery框架

6vue框架基本语法

知识要点:vue基本语法、双向绑定、组件传值、条件渲染、列表渲染、事件处理、表单绑定、自定义事件、插槽、过渡、动画、动态路由、嵌套路由、编程式导航、导航守卫、路由懒加载、脚手架、生命周期、vuex、axios、ts、vue3

7vue案例

知识要点:将知识点融会贯通到案例中。

8react基本语法

知识要点:react简介、jsx语法、元素渲染、组件和props、state、生命周期、表单、条件渲染、组合继承、hooks、性能优化、redux

9react案例

知识要点:将知识点融会贯通到案例中

新增内容:微信小程序及uni-app框架

知识要点:

小程序框架(配置/程序与页面注册/路由),开发者工具

小程序框架组件学习(基础/视图/表单/地图/媒体/导航/开发能力)

小程序框架组件学习(地图/媒体/导航/开发能力)

小程序API(基础/路由/界面/网络/数据缓存/位置服务)

小程序API(设备/媒体/开放接口/授权/登录/支付)

10Node服务器与数据库及框架

Node原生模块、跨域、安全校验、数据加密、数据库基本 *** 作、express框架、koa框架

Vueprototype$axios = axios;

给Vue函数添加一个原型属性$axios 指向Axios

这样做的好处是在vue实例或组件中不用再去重复引用Axios

直接用this$axios就能执行axios 方法了

与很多第三方模块不同的是,axios不能使用use方法

Vueprototype axios

Vueprototypeqs = qs //全局注册,使用方法为:thisqs

以上就是关于kbone + vue 问题集合全部的内容,包括:kbone + vue 问题集合、axios断了网还可以用吗、想做web前端开发师,可是不知道要学习些什么知识等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9655624.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存