当前位置: 首页 > wzjs >正文

网站模版免费下载临沂网站建设优化

网站模版免费下载,临沂网站建设优化,地方域名注册,h5建站模板两个框架扩展提供的 ComponentWithStore 与 ComponentWithComputed 方法无法结合使用。如果需要在一个组件中既想使用 mobx-miniprogram-bindings 又想使用 miniprogram-computed解决方案是: 使用旧版 API 自定义组件仍然使用 Component 方法构建组件,将…
  • 两个框架扩展提供的 ComponentWithStoreComponentWithComputed 方法无法结合使用。
  • 如果需要在一个组件中既想使用 mobx-miniprogram-bindings 又想使用 miniprogram-computed解决方案是:
    1. 使用旧版 API

      • 自定义组件仍然使用 Component 方法构建组件,将两个扩展依赖包的使用全部改为旧版 API
      • mobx-miniprogram-bindings 官方文档
      • miniprogram-computed 官方文档
    2. 使用兼容写法

      • 即要么使用 ComponentWithStore 方法构建组件,要么使用 ComponentWithComputed 方法构建组件

      • 如果使用了 ComponentWithStore 方法构建组件,计算属性写法使用旧版 API

      • 如果使用了 ComponentWithComputed 方法构建组件,Mobx写法使用旧版 API

一、安装 miniprogram-computed 和 mobx-miniprogram

  1. 在项目的根目录下,使用如下命令,将快速在根目录下初始化生成一个 package.json 文件
    npm init -y
    
  2. 安装 miniprogram-computed 和 mobx-miniprogram
    npm install miniprogram-computed 
    
    npm install mobx-miniprogram mobx-miniprogram-bindings
    
  3. 然后 在 微信开发者工具 的左上角 点击 》工具》 构建 npm,构建成功后,将会在项目根目录下生成 miniprogram_npm 文件夹,可以在 miniprogram_npm 文件夹中看见构建的结果

二、在 ComponentWithStore 构建的组件中使用 计算属性

  1. 在项目的根目录下的 components 文件夹中(没有该文件夹的需要自己创建)新建 custom04 文件夹,并在该文件夹中创建 custom04组件(在文件夹上点击鼠标右键,选择 新建 component

  2. 找到项目根目录下的 app.json 文件,增加如下代码,将 custom04组件注册为 全局组件

    {// ...其他配置项"usingComponents": {"custom04": "./components/custom04/custom04"}
    }
    
  3. pages/index.wxml 中使用 custom04 组件

    <custom04 />
    
  4. 修改components/custom04/custom04.js 文件, Component 方法替换成 ComponentWithStore 方法

    // components/custom04/custom04.js
    import {ComponentWithStore
    } from 'mobx-miniprogram-bindings'// 导入计算属性 behavior
    const computedBehavior = require('miniprogram-computed').behaviorComponentWithStore({// storeBindings 不再复述// 注册 behaviorbehaviors: [computedBehavior],data: {a: 1,b: 2},computed: {total(data) {console.log('q23');return data.a + data.b}},watch: {'a,b': function (a, b) {console.log(`a更新之后的数据:` + a);console.log(`b更新之后的数据:` + b);}},methods: {updateData() {this.setData({a: this.data.a + 1,b: this.data.b + 1})}}})
    
  5. 修改components/custom04/custom04.wxml 文件

    <view>{{a}} + {{b}} = {{total}}</view>
    <button type="warn" bind:tap="updateData">修改数据</button>
    

三、在 ComponentWithComputed 构建的组件中使用 状态管理

  1. 在项目的根目录下创建 stores 文件夹,然后在该文件夹下新建 numStore.js 文件

  2. /stores/numStore.js 导入 observable action 方法。使用 observable 方法需要接受一个 store 对象,存储应用的状态

    import {observable,action
    } from 'mobx-miniprogram'export const numStore = observable({numA: 1,numB: 2,// 使用 action 更新 numA 以及 numBupdate: action(function () {this.numA += 1this.numB += 1}),// 计算属性,使用 get 修饰符,get sum() {return this.numA + this.numB;}
    })
    
  3. 在项目的根目录下的 components 文件夹中(没有该文件夹的需要自己创建)新建 custom05 文件夹,并在该文件夹中创建 custom05组件(在文件夹上点击鼠标右键,选择 新建 component

  4. 找到项目根目录下的 app.json 文件,增加如下代码,将 custom05 组件注册为 全局组件

    {// ...其他配置项"usingComponents": {"custom05": "./components/custom05/custom05"}
    }
    
  5. pages/index.wxml 中使用 custom05 组件

    <custom05 />
    
  6. 修改components/custom05/custom05.js 文件, Component 方法替换成 ComponentWithComputed 方法

    // components/custom05/custom05.js
    import {ComponentWithComputed
    } from 'miniprogram-computed'import {storeBindingsBehavior
    } from 'mobx-miniprogram-bindings'import {numStore
    } from '../../stores/numStore'ComponentWithComputed({behaviors: [storeBindingsBehavior],storeBindings: {store: numStore,fields: ['numA', 'numB', 'sum'],actions: ['update']}
    })
    
  7. 修改components/custom05/custom05.wxml 文件

    <!--components/custom05/custom05.wxml-->
    <view>{{numA}} + {{numB}} = {{sum}}</view>
    <button type="primary" bind:tap="update">更新store 中的数据</button>
    
http://www.dtcms.com/wzjs/487750.html

相关文章:

  • 太原做网站排名刚刚北京传来重大消息
  • 淮安做网站.哪家网络公司好?搜索引擎推广和优化方案
  • 跨境电商平台有哪些分类河北seo推广公司
  • 垣宝建设工程集团网站信阳seo
  • 网站服务器租赁合同免费seo网站诊断
  • 做网站应该注意些什么问题国内最好用的免费建站平台
  • 当当网站开发论文百度推广授权代理商
  • 用自己电脑做服务器 网站免费推广引流app
  • 1688网站怎么做滚动图片怎么在百度上打广告
  • 网站建设计划书300360网站seo手机优化软件
  • 想建设网站网站如何赚钱
  • 国外电子商务网站乔拓云建站平台
  • ps做的网站首页关键词推广seo
  • 重庆seo怎么样seo外包服务公司
  • 国外空间网站备案网图识别在线百度
  • 如何在360做网站SEO网络营销岗位
  • 网站域名解析查询上海企业网站seo
  • 公安网站备案流程图汕头seo优化培训
  • 达人室内设计网主页新乡seo网络推广费用
  • 钓鱼网站后台是怎么做的城关网站seo
  • 自己公司怎么做网站seo站点
  • 自己做网站页面写文章一篇30元兼职
  • 企业管理培训课程是不是传销福建seo排名
  • 装修招标网站网站建设平台有哪些
  • 聊城专业网站建设公司优化seo哪家好
  • 江苏企业展厅设计公司2022年seo还值得做吗
  • 公司都是自己制作网站百度首页清爽版
  • qq免费建网站沈阳网站建设
  • 没有网站可以域名备案吗关键词排名优化软件价格
  • wordpress 视频主题襄阳seo培训