mirror of
https://github.com/frappe/books.git
synced 2024-11-10 07:40:55 +00:00
fix: Use h to create component
This commit is contained in:
parent
4071a6e8bc
commit
03dee5913c
@ -1,46 +1,42 @@
|
|||||||
<template>
|
|
||||||
<div class="feather-icon" v-html="iconSVG"></div>
|
|
||||||
</template>
|
|
||||||
<script>
|
<script>
|
||||||
import feather from 'feather-icons';
|
import feather from 'feather-icons';
|
||||||
|
|
||||||
const validIcons = Object.keys(feather.icons);
|
const validIcons = Object.keys(feather.icons);
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
name: {
|
name: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true,
|
required: true,
|
||||||
validator(value) {
|
validator(value) {
|
||||||
const valid = validIcons.includes(value);
|
const valid = validIcons.includes(value);
|
||||||
if (!valid) {
|
if (!valid) {
|
||||||
console.warn(`name property for feather-icon must be one of `, validIcons);
|
console.warn(
|
||||||
}
|
`name property for feather-icon must be one of `,
|
||||||
return valid;
|
validIcons
|
||||||
}
|
);
|
||||||
},
|
|
||||||
size: {
|
|
||||||
type: Number,
|
|
||||||
default: 16
|
|
||||||
}
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
iconSVG() {
|
|
||||||
const icon = feather.icons[this.name];
|
|
||||||
if (!icon) {
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
return icon.toSvg({
|
|
||||||
width: this.size,
|
|
||||||
height: this.size
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
return valid;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
|
render(h) {
|
||||||
|
let icon = feather.icons[this.name];
|
||||||
|
return h('svg', {
|
||||||
|
attrs: Object.assign({}, icon.attrs, {
|
||||||
|
fill: 'none',
|
||||||
|
stroke: 'currentColor',
|
||||||
|
'stroke-linecap': 'round',
|
||||||
|
'stroke-linejoin': 'round',
|
||||||
|
'stroke-width': 1.5,
|
||||||
|
width: null,
|
||||||
|
height: null
|
||||||
|
}),
|
||||||
|
class: [icon.attrs.class],
|
||||||
|
domProps: {
|
||||||
|
innerHTML: icon.contents
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
</script>
|
</script>
|
||||||
<style>
|
|
||||||
.feather-icon {
|
|
||||||
display: inline-flex;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user