c 微信小程序用 第1篇
1.*pages:[{}] 页面路径列表
2.*window:
navigationBarBackgroundColor:配置导航栏背景颜色
navigationBarTextStyle:配置导航栏标题样式
navigationBarTitleText:配置导航栏的颜色
backgroundColor:配置窗口的背景颜色
3.底部tabbar
color :tabar上文字的颜色
selectedColor:tabbar上文字选中的颜色(十六进制)
backgroundColor:tab背景颜色
borderstyle: tabbar背景颜色white/black
声明分包结构
{_pages_:[_pages/index/index_]
比如小程序APPID配置,是否可以使用es6语法
配置小程序及其页面是否允许被微信索引
在中引用则为全局注册,在页面的.json文件中注册则为局部组件
navigtionBarbackgroundColor:导航栏背景颜色
navigatorBarTextStyle white/black 导航栏标题的颜色
navigationStyle 导航栏样式
enablePullDownRefresh:是否开启下拉刷新默认false
onReachBottomDistance (默认number:50)
usingComponent:注册局部组件
页面路由器对象。可以通过 或
获得当前页面或自定义组件的路由器对象。路由的相对路径:页面路由有
switchTab
, reLaunch
, redirectTo
,navigateTo,
navigateBack;
五个方法,与 wx 对象向同名的五个方法 switchTab, reLaunch, redirectTo ,navigateTo, navigateBack; 功能相同;唯一的区别是,页面路由器中的方法调用时,相对路径永远相对于 this
指代的页面或自定义组件。
如下:实现相同的跳转功能
页面 index/index
的 js 代码如上所示。如果此时已经跳转到了一个新页面 pack/index
,然后才调用到上面的 wxNavAction
方法,跳转的新页面路径将是 pack/new-page
;而如果调用的是 routerNavAction
方法,跳转的新页面路径仍然是 index/new-page
。
换而言之, 获得的路由器对象具有更好的基路径稳定性。通常情况下,使用
代替
是更优的。
和
在页面中将获得同样的页面路由器对象,但如果在自定义组件中调用,
将相对于自定义组件所在的页面来进行路由跳转,而
相对于自定义组件自身的路径
c 微信小程序用 第2篇
参考答案:
优势:
无需下载,通过搜索和扫一扫就可以打开。
良好的用户体验:打开速度快。
开发成本要比App要低。
安卓上可以添加到桌面,与原生App差不多。
为用户提供良好的安全保障。小程序的发布,微信拥有一套严格的审查流程, 不能通过审查的小程序是无法发布到线上的。
劣势:
限制较多。页面大小不能超过1M。不能打开超过5个层级的页面。
样式单一。小程序的部分组件已经是成型的了,样式不可以修改。例如:幻灯片. 导航。
推广面窄,不能分享朋友圈,只能通过分享给朋友,附近小程序推广。其中附近小程序也受到微信的限制。
依托于微信,无法开发后台管理功能。
c 微信小程序用 第3篇
WXML 中的动态数据均来自对应 Page 的 data,数据绑定使用 Mustache 语法(双大括号)将变量包起来。
wx:for渲染列表
并不是一个组件,它仅仅是一个包装元素,不会在页面中做任何渲染,只接受控制属性。
在组件上使用 wx:for
控制属性绑定一个数组,即可使用数组中各项的数据重复渲染该组件。
默认数组的当前项的下标变量名默认为 index
,数组当前项的变量名默认为 item
使用 wx:for-item
可以指定数组当前元素的变量名,使用 wx:for-index
可以指定数组当前下标的变量名。
注意:当 wx:for
的值为字符串时,会将字符串解析成字符串数组。花括号和引号之间如果有空格,将最终被解析成为字符串
hidden
就简单的多,组件始终会被渲染,只是简单的控制显示与隐藏。一般来说,wx:if
有更高的切换消耗而 hidden
有更高的初始渲染消耗。因此,如果需要频繁切换的情景下,用 hidden
更好,如果在运行时条件不大可能改变则 wx:if
较好。
在wxml文件中:
在js文件中:
1.在vscode中打开问微信小程序文件夹,下载easy-less,然后再在vscode的里面配置
类似于div
hover-class属性后跟样式属性,表示按下该元素时的效果
详细属性可去官网
文本标签,只能嵌套text,添加长按文字可以复制(只有该标签有这个功能),可以对回车 空格进行编码
特点:默认width:320px;height:240px;
特点:默认height:150px;width:100%
轮播图一般显示图片时需要计算swiper的高度=clac(swiper的宽度(750rpx)*原图的宽度/原图的宽度)
swiper和swiper-item必须是同时使用
属性:
利用src属性指定跳转的位置
target要跳转到当前小程序还是其他的小程序页面self默认值表示自己,miniProgramer其他小程序页面
open-type设置跳转的方式navigator(默认值)不能跳到tabbar页面
目标页面如果是tabbar页面
目标页面不是tabbar页面
注意:目标页面是tabbar时,页面是不接收参数的
1.在目标页面路径地址后面通过query即?号拼接字符串
组件传参
API传参
接收参数:在目标页面中的生命周期钩子函数onLoad中通过系统参数获取
可以将html字符串解析为页面结构,通过nodes属性指定渲染的变量
作用:可以给多视图组件提供一个包裹,并不会渲染到页面结构中,不能使用class,style等属性,但可以使用模板语法
作用:渲染小图标 type指定类型,size指定大小
设置横向或者纵向滑块
需要设置map组件的经纬度
longitude:设置中心点的经度,
latitude:中心点的维度
scale:设置地图的缩放级别
rotate:旋转
show-compass:显示指南针
enable-satellite:开启卫星地图
将页面中的公共部分提取出来进行复用
缺点:不能像模版内部传递数据
定义模板:一般放在templates目录下的.wxml文件
引入模板
1.定义一个模板,定义一个后缀名为.wxml的文件,模板必须在template组件的内部,且在内部可以接收wxss样式,以及出递过来的值
2.引入模板
3.使用模板
c 微信小程序用 第4篇
参考答案:
微信小程序采用JavaScript. WXML. WXSS三种技术进行开发,从技术讲和现有的前端开发差不多,但深入挖掘的话却又有所不同。
JavaScript:首先JavaScript的代码是运行在微信App中的,并不是运行在浏览器中,因此一些H5技术的应用,需要微信App提供对应的API支持,而这限制住了H5技术的应用,且其不能称为严格的H5,可以称其为伪H5,同理,微信提供的独有的某些API,H5也不支持或支持的不是特别好。
WXML:WXML微信自己基于XML语法开发的,因此开发时,只能使用微信提供的现有标签,HTML的标签是无法使用的。
WXSS:WXSS具有CSS的大部分特性,但并不是所有的都支持,而且支持哪些,不支持哪些并没有详细的文档。
微信的架构,是数据驱动的架构模式,它的UI和数据是分离的,所有的页面更新,都需要通过对数据的更改来实现。
小程序分为两个部分webview和appService。其中webview主要用来展现UI,appService有来处理业务逻辑. 数据及接口调用。它们在两个进程中运行,通过系统层JSBridge实现通信,实现UI的渲染. 事件的处理
c 微信小程序用 第5篇
参考答案:
一. 给HTML元素添加data-*属性来传递我们需要的值,然后通过e. currentTarget. dataset或onload的param参数获取。但data-名称不能有大写字母和不可以存放对象
二. 设置id 的方法标识来传值通过e. currentTarget. id获取设置的id的值, 然后通过设置全局对象的方式来传递数值
三. 在navigator中添加参数传值
c 微信小程序用 第6篇
参考答案:
第一条是运行环境的不同
传统的HTML5的运行环境是浏览器,包括webview,而微信小程序的运行环境并非完整的浏览器,是微信开发团队基于浏览器内核完全重构的一个内置解析器,针对小程序专门做了优化,配合自己定义的开发语言标准,提升了小程序的性能。
第二条是开发成本的不同
只在微信中运行,所以不用再去顾虑浏览器兼容性,不用担心生产环境中出现不可预料的奇妙BUG
第三条是获取系统级权限的不同
面试题千万不要死记,一定要自己理解,用自己的方式表达出来,在这里预祝各位成功拿下自己心仪的offer。
c 微信小程序用 第7篇
API(应用程序接口)是一些预先定义好的函数或者接口,目的是为了应用程序与开发人员基于某种软件或硬件得以访问一组例程的能力。小程序开发框架提供丰富的微信原生 API,可以方便的调起微信提供的能力,如获取用户信息,本地存储,支付功能等。详细介绍请参考 API 文档
采用的json格式的key-value形式存储
小程序中不存在跨域的概念
小程序对数据接口的要求(正式环境)
开发阶段
在页面中显示消息提示框
不会自动关闭,需要使用()
设置当前页面标题,一般不会放在onLoad生命周期中
一般使用在给用户提示是否确认的提升框
如果某个接口没有授权,需要向用户申请授权否则无法使用
这个API不会重新申请授权,他会自己申请,低版本需要做兼容性处理
目前该接口针对非个人开发者,且完成了认证的小程序开放
微信登录
主要获取个人微信的授权码code
在wxml中
在js文件中