Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
@visactor/lark-vchart
Advanced tools
@visactor/lark-vchart
是 VChart 为飞书小程序封装的图表组件库,用于支持飞书小程序上的图表渲染。支持通过 npm
方式引入。
该组件库只是做了环境的封装,配置项以及 API 同 VChart 完全一致,对应的文档详见 VChart。
飞书版本 >= 3.45。 飞书开发者工具
@visactor/lark-vchart
图表组件使用示例如下:
<chart
canvas-id="chart"
spec="{{ spec }}"
styles="{{ styles }}"
events="{{ events }}"
bind:chartinit="onChartInit"
bind:chartready="onChartReady"
/>
canvas-id
为图表 id,与 dom 的 id 一致,请确保 id 不重复。spec
是 VChart 的核心概念,跨端组件的 spec 与 PC 端保持一致。图表配置例子可以参见 VChart 图表示例 。对于不熟悉 VChart 的用户,可以参见 快速开始 VChart 教程。styles
为图表容器样式,可以用于控制图表宽高等样式。events
是一个对象数组,用于注册一系列事件,其定义如下,具体的事件名称、事件筛选配置以及回调函数的参数详见 VChart 事件 APIinterface IEvent {
/**
* 事件的名称
*/
type: string;
/**
* 事件 API 中的事件筛选配置
*/
query?: object;
handler: (event) => void;
}
bind:chartinit
是一个回调函数,在图表初始化完成后调用。bind:chartready
是一个回调函数,在图表完成渲染后调用。除了阅读下面的使用说明,也可以直接移步 lark-vchart-example。
在使用 VChart 飞书小程序组件库前,请确保你已经了解过飞书开放平台的相关文档介绍。
开启编辑器 > 详情 > 本地设置 > 使用 npm,具体操作可阅读开启 npm 能力。
务必注意:npm 包的 package.json 文件需要在 project.config.json 所定义的 miniprogramRoot 内。
@visactor/lark-vchart
$ npm install @visactor/lark-vchart
结构如下:
├── pages
│ └── demo
│ └── index.js # 页面 js
│ ├── index.json # 页面 json 配置
│ ├── index.ttml # 页面 xml 结构
│ ├── index.ttss # 页面样式
在 index.json 中配置如下内容即可,使用 chart
自定义组件。
{
"usingComponents": {
"chart": "@visactor/lark-vchart/index"
}
}
index.ttml
准备如下的 xml 结构:<chart
canvas-id="chart"
spec="{{ spec }}"
styles="{{ styles }}"
events="{{ events }}"
bind:chartinit="onChartInit"
bind:chartready="onChartReady"
/>
index.js
中准备图表的所需的配置Page({
data: {
canvasId: 'chartId', // canvasId 图表唯一Id
events: [], // events 自定义事件
styles: `
height: 50vh;
width: 100%
`, // 样式字符
// 图表配置项
spec: {
type: 'pie',
data: [
{
id: 'data1',
values: [
{ value: 335, name: '直接访问' },
{ value: 310, name: '邮件营销' },
{ value: 274, name: '联盟广告' },
{ value: 123, name: '搜索引擎' },
{ value: 215, name: '视频广告' }
]
}
],
outerRadius: 0.6,
categoryField: 'name',
valueField: 'value'
}
},
onLoad: function (options) {}
});
events
功能, chartinit
回调参数, chartready
回调参数暂不可用针对一些需要使用到 chart 实例的功能,目前可以通过 selectComponent ,在给组件 <chart id="chart1">
标明 id 属性后,通过 selectComponent
拿到图表实例,如下所示:
onChartReady() {
console.log('chart 实例渲染完成');
this.selectComponent("#chart1", res => {
const chartInstance = res && res.chart; // 获取 chart 实例
console.log('获取 VChart 实例', chartInstance);
});
},
如果在使用过程中发现问题,欢迎在 GitHub issues 中向我们反馈,非常感谢!
使用飞书开发者工具,选择【小程序】导入本项目即可。
FAQs
VChart 飞书小程序组件
We found that @visactor/lark-vchart demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.