12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <template>
- <div
- class="bs-design-wrap"
- :class="`bs-text-${customTheme}`"
- >
- <div
- class="content-box"
- :style="{'text-align': config.customize.align,'letter-spacing': config.customize.letterSpacing +'px','font-family': config.customize.fontFamily,'font-size': config.customize.fontSize +'px','font-weight': +config.customize.fontWeight,'background-image': `-webkit-linear-gradient(${config.customize.color})`}"
- >
- {{ config.customize.title }}
- </div>
- </div>
- </template>
- <script>
- import commonMixins from 'data-room-ui/js/mixins/commonMixins'
- import paramsMixins from 'data-room-ui/js/mixins/paramsMixins'
- import linkageMixins from 'data-room-ui/js/mixins/linkageMixins'
- export default {
- name: 'Texts',
- components: {},
- mixins: [paramsMixins, commonMixins, linkageMixins],
- props: {
- // 卡片的属性
- config: {
- type: Object,
- default: () => ({})
- }
- },
- data () {
- return {
- customClass: {}
- }
- },
- computed: {
- },
- mounted () {
- this.chartInit()
- },
- methods: {
- changeStyle (config) {
- config.customize.title = config.customize.thousands ? config.customize?.title?.toString()?.replace(/\B(?=(\d{3})+(?!\d))/g, ',') : config.customize.title
- this.changeChartConfig(config)
- },
- // 通过表达式计算得来的值
- getDataByExpression (config) {
- const result = new Function('dataset', 'computedDatas', this.config.expression)
- config.customize.title = result(this.dataset, this.computedDatas)
- // 同时将计算得来的值保存到公共的数据存储的地方
- this.updateComputedDatas({ code: config.code, title: config.title, data: config.customize.title })
- },
- dataFormatting (config, data) {
- // 文本数据配置原则:选择数据集则以后端返回的数据为主,否则以设置面板中标题设置为准
- if (config.dataSource.businessKey && config.dataSource.source === 'dataset') {
- config.customize.title = data && data.data && data.data.length ? data.data[0][config.dataSource.metricField] : '暂无数据'
- config.option.data = data && data.data && data.data.length ? data.data : []
- }
- return config
- }
- }
- }
- </script>
- <style lang="scss" scoped>
- @import "../../assets/fonts/numberFont/stylesheet.css";
- .bs-design-wrap{
- width: 100%;
- display: flex;
- align-items: center;
- //justify-content: center;
- }
- .content-box{
- width: 100%;
- text-align: center;
- /* 将背景设为渐变 */
- /*background-image: -webkit-linear-gradient(left, #6294F7, #C85D14);*/
- /* 规定背景绘制区域 */
- -webkit-background-clip: text;
- /* 将文字隐藏 */
- -webkit-text-fill-color: transparent;
- }
- </style>
|