美文网首页小程序
uni-app开发钉钉小程序 引入my-f2

uni-app开发钉钉小程序 引入my-f2

作者: 一恋蝶梦 | 来源:发表于2022-08-12 00:45 被阅读0次

在使用 uni-app 开发钉钉小程序时,想使用 antv f2 图表库,其中遇到的问题和解决方式。

官方提供的使用方式

F2 的支付宝小程序版本:
https://github.com/antvis/my-f2
项目中安装F2

npm install @antv/my-f2 --save

使用json文件,引入组件

{
  "usingComponents": {
    "f2": "@antv/my-f2"
  }
}

运行结果 页面报错:


json文件引入组件 报错

不是单单引入@antv/my-f2 会报错。

而是在uni-app中通过 usingComponents 引入mycomponents下的组件都会报错。
如,自定义一个测试组件:

测试自定义组件
{
  "usingComponents": {
    "my-test": "/mycomponents/my-test/my-test"
  }
}

这个你们可以测试下,一样会报错。
反正在钉钉环境下,我使用 json文件的方式 来引入自定义组件,就没有成功过。

如果页面中直接 import 导入组件行不行呢?

...
<script>
import AntvF2 from '@antv/my-f2'
export default {
  components: {
      AntvF2
  }
}
</script>

这个错得更离谱,直接整个项目崩了。


import导入组件 报错

最终解决方式

首先

把支付宝小程序my-f2 中相关的代码提取出来,整合成uni-app中的自定义组件。
代码地址:https://github.com/yiPian/f2-canvas-to-dd

然后

放置在uni-app项目里面的 mycomponents 文件夹中。
如图:

组件存放目录

最后使用组件

<template>
    <view>
        <f2-canvas :on-init="onInitChart" :width="300" :height="300"></f2-canvas>
    </view>
</template>

<script>
    import F2Canvas from '@/mycomponents/f2-canvas/f2-canvas'

    export default {
        components: { F2Canvas },
        methods: {  
            onInitChart(F2, config) {
                const chart = new F2.Chart(config);
                const data = [
                { value: 63.4, city: 'New York', date: '2011-10-01' },
                { value: 62.7, city: 'Alaska', date: '2011-10-01' },
                { value: 72.2, city: 'Austin', date: '2011-10-01' },
                { value: 58, city: 'New York', date: '2011-10-02' },
                { value: 59.9, city: 'Alaska', date: '2011-10-02' },
                { value: 67.7, city: 'Austin', date: '2011-10-02' },
                { value: 53.3, city: 'New York', date: '2011-10-03' },
                { value: 59.1, city: 'Alaska', date: '2011-10-03' },
                { value: 69.4, city: 'Austin', date: '2011-10-03' },
                ];
                chart.source(data, {
                date: {
                    range: [0, 1],
                    type: 'timeCat',
                    mask: 'MM-DD'
                },
                value: {
                    max: 300,
                    tickCount: 4
                }
                });
                chart.area().position('date*value').color('city').adjust('stack');
                chart.line().position('date*value').color('city').adjust('stack');
                chart.render();
                // 注意:需要把chart return 出来
                return chart;
            }
        }
    }
</script>

运行效果


运行效果

相关文章

  • uni-app开发钉钉小程序 引入my-f2

    在使用 uni-app 开发钉钉小程序时,想使用 antv f2 图表库,其中遇到的问题和解决方式。 官方提供的使...

  • 钉钉小程序常见问题

    uni-app 跨平台写的钉钉小程序 1、钉钉小程序 无权跨域调用 在开发者后台找到应用,设置相应的安全域名。注...

  • 钉钉小程序 开发 PHP + 钉钉小程序 (企业内部应用)

    钉钉小程序 开发 PHP + 钉钉小程序 (企业内部应用) 应公司需求 需要结合钉钉开发小程序 由于公司自用 所以...

  • uni-app开发钉钉小程序

    最近接触到小程序开发,之前通过网课学过微信小程序的开发并实现过一个小的demo,但是这次的开发是钉钉小程序,而且考...

  • 使用antv/f2 或antv/my-f2时,页面多个图表展示问

    钉钉/支付宝小程序中当页面多个图表时,图标被缩小或者放大问题 1.使用@antv/my-f2时解决方法: 在 se...

  • 钉钉小程序开发

    DEMO github址 、本人之前一直使用h5开发钉钉三方应用,最近看到官方推荐用钉钉e应用,即小程序,于是兴奋...

  • 钉钉微应用开发(一)环境搭建

    钉钉开发按照应用类型可以分为小程序以及h5微应用两种。小程序是钉钉自定义的一种开发模式,类似安卓或者微信小程序。和...

  • 小程序一键转uniapp

    一款神器:支持转换微信、QQ、头条/抖音、支付宝/钉钉和百度等小程序转换到 uni-app 项目输入小程序项目路径...

  • 开发钉钉小程序笔记

    1 2、赋值 3、跳转 4、输入框输入 5、toast提示 6、picker-view使用

  • 钉钉E应用调研

    在钉钉内运行的"小程序"叫做E应用,钉钉小程序概览入口,又分为三种类型: 第三方个人应用示例: 大致浏览了一下开发...

网友评论

    本文标题:uni-app开发钉钉小程序 引入my-f2

    本文链接:https://www.haomeiwen.com/subject/stdtgrtx.html