微信小程序项目初始化配置

这篇具有很好参考价值的文章主要介绍了微信小程序项目初始化配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

微信小程序项目初始化配置

注:该文章用于记录或学习交流



前言

微信小程序项目初始化配置准备,包括项目创建,基础路径配置,组件库安装,接口请求封装,部分实用组件封装等


一、初始项目创建

1.微信小程序开发者工具创建初始项目

  • 创建初始项目后,对项目文件结构重新梳理
    微信小程序项目初始化配置
    注:目录结构根据个人需求创建,assets和static文件夹的区别详见assets与static的区别

2.微信小程序全局路径配置

在app.json中配置resolveAlias路径规则属性

// app.json

{
  "pages": [
    "src/pages/index/index",
    "src/pages/home/home"
  ],
  "window": {
    "backgroundTextStyle": "light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "Weixin",
    "navigationBarTextStyle": "black"
  },
  // 路径规则配置,需以/*结尾
  "resolveAlias": {
    "~/*": "/*",
    "@utils/*": "utils/*"
  },
  "style": "v2", // 可删除,因为该配置表示启用新版组件样式,将会导致以后引入组件库的样式错乱
  "sitemapLocation": "sitemap.json"
}

根据需求配置完成后可在文件中直接使用,例如:

import { formatTime } from '~/utils/util' // ~表示根路径
import { formatTime } from '@utils/util' // @指定路径

3.微信小程序引入 less、sass、ts

微信小程序引入less、sass、ts无需任何第三方工具,官方原生即可支持,详情移步官方文档: 原生支持 TypeScript

此处我暂且只引入less,在project.config.json文件中配置

// project.config.json

{
  "description": "项目配置文件",
  "packOptions": {
    "ignore": [],
    "include": []
  },
  "setting": {
  	...
  	// 配置 less、sass、ts
  	"useCompilerPlugins": [
      "less"
    ]
  }
}

配置完成后,清一下缓存,不放心的可以重启一下开发者工具,即可在写代码的时候自由使用less了

二、基础地址配置

在开发时,需要统一配置很多基本url,接口的,图片等服务器资源的url等,我们在configs文件夹中创建config.js文件进行统一配置

// config.js

const base_url = 'https://api.apiopen.top' // 基础地址
const dev_url = '' // 开发地址
const prod_url = '' // 发布地址

const config = {
  baseUrl: base_url,
  imgUrl: `${base_url}/userfiles/images/`,
  tempUrl: `${base_url}/userfiles/temp/`,
  apiUrl: `${base_url}/api/`,
  appid: 'wx417856313e7d****'
}

export default config // 或者以module.exports的方式导出,再按需导入
// 以module.exports的方式导出
module.exports = {
  baseUrl: base_url,
  imgUrl: `${base_url}/userfiles/images/`,
  tempUrl: `${base_url}/userfiles/temp/`,
  apiUrl: `${base_url}/api/`,
  appid: 'wx417856313e7d****'
}

配置完成后,在需要的地方导入该config.js文件即可
或者以按需导入的方式

import config from '~/configs/config'
console.log(config.baseUrl);

import { baseUrl } from '~/configs/config'

三、微信小程序 request 封装 (仿axios)

在对接接口的时候,使用微信原生的request进行请求难免会出现很多冗余代码。加上平时开发web比较多,习惯了axios的使用方式,现对微信原生的request进行仿axios的二次封装,简化和统一管理小程序与后端接口的请求方式。

  • 若想引入axios,可参考小程序中axios的使用 等文章,可能需要同时引入 axios 和 axios-miniprogram-adapter 小程序适配器搭配使用才行,笔者喜欢保持库的简洁,故在此处只对微信原生的request作出简单封装,满足简单的日常需求即可。

在utils文件夹下创建request.js文件,在这里封装wx.request

// utils/request.js

// 引入基础路径配置
import config from '@configs/config'

/**
 * 封装一个基础路径的 request 请求,并导出
 * @param {*} options: {
 *    url: 请求路径,由基础路径+url拼接而成
 *    aurl: 请求完整路径,优先级大于 url,
 *    method: 请求方式,
 *    data: 请求参数,
 * }
 */
const request = (options) => {
  // 用 Promise 做链式调用封装
  return new Promise((resolve, reject) => {
    // 此处可以做加载 loading 或提示动画等操作
    wx.request({
      // 若直接给完整路径 aurl 则直接使用完整路径,否则使用标准的基础路径 apiUrl + 请求路径 url 拼接
      url: options.aurl || config.apiUrl + options.url,
      method: options.method || 'GET',
      data: options.data || {},
      header: {
      	// 默认,一般不用改
        'content-type': "application/x-www-form-urlencoded"
      },
      responseType: options.responseType || "",
      timeout: 16000,
      success(res) {
        // 此处可以做关闭 loading 或提示动画等操作
        if (res.statusCode === 200) {
          // 成功数据
          resolve(res.data);
        } else {
          // 失败信息
          console.log(res.errMsg);
        }
      },
      fail(res) {
        // 失败
        reject(res);
      }
    })
  })
}

export default request

然后在根目录创建api文件夹,在其中创建一个接口文件,如test.js,再引入request.js文件,写一个getData方法

// api/test.js

import request from '~/utils/request.js'

export function getData(data) {
  return request({
    url: 'sentences', // config.apiUrl + url 拼接,完整路径为:https://api.apiopen.top/sentences
    method: 'get',
    data: data
  })
}

在项目文件中引入并使用

import { getData } from '~/api/test.js'

...

getData().then((res) => {
   console.log('接口数据:', res);
})

打印数据内容:
微信小程序项目初始化配置

该接口为开放接口,随机获取一首诗句,仅限用于开放测试等

注:微信小程序接入接口前需要去微信公众平台开启api白名单,否则会报request不在合法域名内之类的错

  • 打开微信公众平台
    微信小程序项目初始化配置
    首页这里点击开发设置 会跳转到: 开发 / 开发管理 / 开发设置,翻到下面的服务器域名即可配置request合法域名
    微信小程序项目初始化配置
    还有可能会遇到这种报错
    微信小程序项目初始化配置
    只需要在本地设置里面勾选上不校验域名和证书就好了
    微信小程序项目初始化配置

配置完成之后去发送request请求就能正确请求到数据啦~

持续更新中…文章来源地址https://www.toymoban.com/news/detail-403695.html

到了这里,关于微信小程序项目初始化配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【vue3项目初始化配置】vue3 + element plus

    项目初始化是开发过程中很重要的一个环节,本篇博客带大家从零开始创建并初始化一个vue3项目,文章详细介绍了每个步骤,希望能帮助刚接触开发的小伙伴。 目录 一.创建项目 二.安装插件  ​编辑 ​编辑三.安装依赖 ​编辑 ​编辑四.配置项目 配置vu.config.js文件  配置

    2024年01月18日
    浏览(72)
  • 黑马程序员前端 Vue3 小兔鲜电商项目——(一)初始化项目

    Vue3是Vue.js最新的主要版本,它已经于2020年9月18日发布。它提供了许多新功能和性能改进,这些改进使得Vue更易于使用和更具可扩展性。 以下是Vue3的一些主要特性: 更快的渲染:Vue3使用重写的响应式系统,它使用Proxy对象来解决Vue2中的性能瓶颈问题。这使得Vue3的渲染速度比

    2024年02月15日
    浏览(82)
  • 黑马程序员前端 Vue3 小兔鲜电商项目——(二)初始化项目

    Vue3是Vue.js最新的主要版本,它已经于2020年9月18日发布。它提供了许多新功能和性能改进,这些改进使得Vue更易于使用和更具可扩展性。 以下是Vue3的一些主要特性: 更快的渲染:Vue3使用重写的响应式系统,它使用Proxy对象来解决Vue2中的性能瓶颈问题。这使得Vue3的渲染速度比

    2024年02月11日
    浏览(44)
  • vite初始化vue3项目(配置自动格式化工具与git提交规范工具)

    初始化项目 vite构建vue项目还是比较简单的,简单配置选择一下就行了 初始化命令 初始化最新版本vue项目 2. 基本选项含义 Add TypeScript 是否添加TS ADD JSX是否支持JSX ADD Vue Router是否添加Vue Router路由管理工具 ADD Pinia 是否添加pinia(状态管理工具) Add ESLinit 是否添加ESLint是否添加

    2024年02月12日
    浏览(62)
  • 【实战】 项目起航:项目初始化与配置 —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(一)

    学习内容来源:React + React Hook + TS 最佳实践-慕课网 相对原教程,我在学习开始时(2023.03)采用的是当前最新版本: 项 版本 react react-dom ^18.2.0 react-router react-router-dom ^6.11.2 antd ^4.24.8 @commitlint/cli @commitlint/config-conventional ^17.4.4 eslint-config-prettier ^8.6.0 husky ^8.0.3 lint-staged ^13.1.2 p

    2024年02月10日
    浏览(78)
  • 【实战】一、项目起航:项目初始化与配置 —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(一)

    学习内容来源:React + React Hook + TS 最佳实践-慕课网 相对原教程,我在学习开始时(2023.03)采用的是当前最新版本: 项 版本 react react-dom ^18.2.0 react-router react-router-dom ^6.11.2 antd ^4.24.8 @commitlint/cli @commitlint/config-conventional ^17.4.4 eslint-config-prettier ^8.6.0 husky ^8.0.3 lint-staged ^13.1.2 p

    2024年02月12日
    浏览(53)
  • Spring初始化项目

    访问地址:https://start.spring.io idea配置:https://start.spring.io 访问地址:https://start.aliyun.com/bootstrap.html idea配置:https://start.aliyun.com 官网 阿里巴巴 版本 最新 稍旧 国内软件 大部分没有(mybatis plus) 有的支持(如:mybatis plus)

    2024年02月09日
    浏览(47)
  • 外卖项目初始化01

    项目的搭建 创建项目 仓库(把代码上传上去,切换个人分支) 工程化scss reset.scss main.scss [统一的出口] common.scss [公共的样式] vant.scss [覆盖vant的样式] var.scss 【变量的文件, 新 】 css3 的变量 一键切换皮肤 【了解一下】 mixin.scss 屏幕适配 【 新 】 px 转换成 vw axios的配置(

    2024年02月09日
    浏览(48)
  • 第九节 初始化项目

    目录 系列文章目录 前言 操作方法 总结 初始化项目,导入默认reset.scss 、variables.scss及mixins.scss等并修改main.js引入样式 将默认样式表文件导入到项目。样式文件已经放到资源里请自行下载(

    2024年01月20日
    浏览(45)
  • git初始化项目上传

    步骤1:创建远程仓库 平台上建好项目,并copy远程仓库的URL 步骤2:初始化本地Git 首先,进入您本地的项目根目录下,然后,打开命令行界面,导航到该目录并执行以下命令: 执行完之后我们可以看到根目录下会多出一个.git文件。 如果是java项目可以在这个项目根目录下加个

    2024年02月10日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包