javascript - 在其中渲染 svg 内容
问题描述
我有一个 Vue.js 组件,它动态构建 svg 元素的内容。为简单起见,说内容是<circle cx="50" cy="50" r="60" />
该组件通过操作名为的数据变量来实现svg
:
data() {
return {
svg: '<circle cx="50" cy="50" r="60" />',
foobar: 'foobar',
};
},
我在父组件中有一些特定的 svg 元素自定义(即宽度、高度、视图框)。如何以“原始”形式在模板中呈现它?
<template>
<svg v-html="svg"></svg>
</template>
将添加我不想要的 svg 元素
解决方案
最简单的方法是将 放在v-html
标准的 SVG <g>
(组)元素上:
<template>
<g v-html="svg"></g>
</template>
这不会呈现 html 的“原始”形式,但<g>
元素应该不是问题
推荐阅读
- matlab - 如何在 Matlab 中生成样本并估计协方差和特征值?
- sql - PSQL:全文搜索以忽略或匹配句点和停止字符
- python-3.x - 合并数据框以更新具有最新时间戳的单元格
- python - 删除列表中属于同一列表中其他元素的元素
- python - 如何在三个可能不同的长度列表的每个位置找到最大的数字并找到它们的总和?
- python - 如何保持 matplotlib 图形大于 tkinter 画布?
- python - 使用 Python,pandas 计算单独数据框中的字符串实例,不完全匹配
- mule - Mule 4 在“运行”和“调试”执行之间的事务流中的不同行为
- mysql - SQL挑战!有效日期拆分
- plot - 如何在枫树中绘制二阶微分方程的解