【微信小程序】WXML WXSS JS

简介: 🍓小程序代码的构成 - WXML 模板1. 什么是 WXML2. WXML 和 HTML 的区别🍇小程序代码的构成 - WXSS 样式1. 什么是 WXSS2. WXSS 和 CSS 的区别🍒小程序代码的构成 - JS 逻辑交互1. 小程序中的 .js 文件2. 小程序中 .js 文件的分类

🍓小程序代码的构成 - WXML 模板


1. 什么是 WXML


WXML(WeiXin Markup Language)是小程序框架设计的一套 标签语言 , 用来构建小程序页面的结构 ,其作用类似于网页开发中的 HTML。

2. WXML 和 HTML 的区别


① 标签名称不同


HTML (div, span, img, a)

WXML(view, text, image, navigator)


② 属性节点不同


 超链接


③ 提供了类似于 Vue 中的模板语法


数据绑定


列表渲染


条件渲染


<view>aaa</view>
<view>aaa</view>
<div>aaa</div>
<div>aaa</div>


div标签在小程序中不能换行了


🍇小程序代码的构成 - WXSS 样式


1. 什么是 WXSS


WXSS (WeiXin Style Sheets)是一套 样式语言 ,用于描述 WXML 的组件样式,类似于网页开发中的 CSS。


2. WXSS 和 CSS 的区别


① 新增了 rpx 尺寸单位


 CSS 中需要手动进行像素单位换算,例如 rem


 WXSS 在底层支持新的尺寸单位 rpx,在不同大小的屏幕上小程序会自动进行换算


② 提供了全局的样式和局部样式


 项目根目录中的 app.wxss 会作用于所有小程序页面


 局部页面的 .wxss 样式仅对当前页面生效


③ WXSS 仅支持部分 CSS 选择器


 .class 和 #id


 element


并集选择器、后代选择器


 ::after 和 ::before 等伪类选择器


当然你可以把HTML和CSS放入小程序中:


效果:


HTML(放入WXML中):  

<!--pages/tsj/tsj.wxml-->
<button class="c-button c-button--gooey"> Hover me
  <div class="c-button__blobs">
  <div></div>
  <div></div>
  <div></div>
  </div>
</button>
<svg style="display: block; height: 0; width: 0;" version="1.1" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <filter id="goo">
      <feGaussianBlur result="blur" stdDeviation="10" in="SourceGraphic"></feGaussianBlur>
      <feColorMatrix result="goo" values="1 0 0 0 0  0 1 0 0 0  0 0 1 0 0  0 0 0 18 -7" mode="matrix" in="blur"></feColorMatrix>
      <feBlend in2="goo" in="SourceGraphic"></feBlend>
    </filter>
  </defs>
</svg>

CSS(放入WXSS中):

/* pages/tsj/tsj.wxss */
/* From www.lingdaima.com */
.c-button {
  color: #000;
  font-weight: 700;
  font-size: 16px;
  text-decoration: none;
  padding: 0.9em 1.6em;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  z-index: 1;
 }
 .c-button--gooey {
  color: #06c8d9;
  text-transform: uppercase;
  letter-spacing: 2px;
  border: 4px solid #06c8d9;
  border-radius: 0;
  position: relative;
  transition: all 700ms ease;
 }
 .c-button--gooey .c-button__blobs {
  height: 100%;
  filter: url(#goo);
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  bottom: -3px;
  right: -1px;
  z-index: -1;
 }
 .c-button--gooey .c-button__blobs div {
  background-color: #06c8d9;
  width: 34%;
  height: 100%;
  border-radius: 100%;
  position: absolute;
  transform: scale(1.4) translateY(125%) translateZ(0);
  transition: all 700ms ease;
 }
 .c-button--gooey .c-button__blobs div:nth-child(1) {
  left: -5%;
 }
 .c-button--gooey .c-button__blobs div:nth-child(2) {
  left: 30%;
  transition-delay: 60ms;
 }
 .c-button--gooey .c-button__blobs div:nth-child(3) {
  left: 66%;
  transition-delay: 25ms;
 }
 .c-button--gooey:hover {
  color: #fff;
 }
 .c-button--gooey:hover .c-button__blobs div {
  transform: scale(1.4) translateY(0) translateZ(0);
 }

🍒小程序代码的构成 - JS 逻辑交互


1. 小程序中的 .js 文件


一个项目仅仅提供界面展示是不够的,在小程序中,我们通过 .js 文件来处理用户的操作。例如:响应用户的点击、获取用户的位置等等。


2. 小程序中 .js 文件的分类


小程序中的 JS 文件分为三大类,分别是:


① app.js


是 整个小程序项目的入口文件 ,通过调用 App() 函数 来启动整个小程序


② 页面的 .js 文件


 是 页面的入口文件 ,通过调用 Page() 函数 来创建并运行页面


③ 普通的 .js 文件


是 普通的功能模块文件 ,用来封装 公共的函数或属性 供页面使用


相关文章
|
1月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
619 1
|
1月前
|
JSON 前端开发 API
使用微信JS-SDK调用发票接口的完整开发指南
本文介绍了如何使用微信JS-SDK的`chooseInvoiceTitle`接口来调用微信的发票功能。通过微信发票接口,用户可以选择开具个人或单位发票,并获取相关发票信息,如抬头、税号、公司地址等。在文中,详细描述了JS-SDK的初始化、发票接口的调用方式,并提供了完整的代码示例。文章还介绍了如何处理返回的发票信息,帮助开发者快速集成微信发票功能。
78 2
|
1月前
|
移动开发 安全 API
微信H5支付--微信JS-SDK支付--点金计划
本文详细介绍了微信H5支付和JS-SDK支付的原理、配置和开发流程,涵盖了H5支付在移动端浏览器外唤起微信支付的细节,以及JS-SDK支付在微信内置浏览器中完成支付的相关注意事项。文章还针对微信支付常见问题,提供了解决方案和代码示例。最后,文章深入解析了微信支付点金计划,包括商家小票的自定义开发、API接口以及支付成功后的页面展示逻辑,为开发者提供了完整的开发参考。
44 0
微信H5支付--微信JS-SDK支付--点金计划
|
2月前
|
JSON 小程序 前端开发
towxml的使用,在微信小程序中快速将markdown格式渲染为wxml文本
本文介绍了在微信小程序中使用`towxml`库将Markdown格式文本渲染为WXML的方法。文章提供了`towxml`的概述、安装步骤、以及如何在小程序中配置和使用`towxml`进行Markdown解析的详细说明和代码示例。
|
3月前
|
小程序 JavaScript
|
3月前
|
缓存 JavaScript 前端开发
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)更新时间(2020-10-29)
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的传统戏曲推广微信小程序附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的传统戏曲推广微信小程序附带文章源码部署视频讲解等
42 0
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的“鼻护灵”微信小程序附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的“鼻护灵”微信小程序附带文章源码部署视频讲解等
61 0
|
1月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
517 7
|
1月前
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
114 7

热门文章

最新文章