Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 

67 linhas
2.3 KiB

  1. import { defineMixin } from '../../libs/vue'
  2. import ReadMoreDefaultProps from './readMore'
  3. import { registerComponentProps } from '../../libs/config/props.js'
  4. const defProps = registerComponentProps(ReadMoreDefaultProps)
  5. export const props = defineMixin({
  6. props: {
  7. // 默认的显示占位高度
  8. showHeight: {
  9. type: [String, Number],
  10. default: () => defProps.readMore.showHeight
  11. },
  12. // 展开后是否显示"收起"按钮
  13. toggle: {
  14. type: Boolean,
  15. default: () => defProps.readMore.toggle
  16. },
  17. // 关闭时的提示文字
  18. closeText: {
  19. type: String,
  20. default: () => defProps.readMore.closeText
  21. },
  22. // 展开时的提示文字
  23. openText: {
  24. type: String,
  25. default: () => defProps.readMore.openText
  26. },
  27. // 提示的文字颜色
  28. color: {
  29. type: String,
  30. default: () => defProps.readMore.color
  31. },
  32. // 提示文字的大小
  33. fontSize: {
  34. type: [String, Number],
  35. default: () => defProps.readMore.fontSize
  36. },
  37. // 是否显示阴影
  38. // 此参数不能写在props/readMore.js中进行默认配置,因为使用了条件编译,在外部js中
  39. // uni无法准确识别当前是否处于nvue还是非nvue下
  40. shadowStyle: {
  41. type: Object,
  42. default: () => ({
  43. // #ifndef APP-NVUE
  44. backgroundImage: 'linear-gradient(-180deg, rgba(255, 255, 255, 0) 0%, #fff 80%)',
  45. // #endif
  46. // #ifdef APP-NVUE
  47. // nvue上不支持设置复杂的backgroundImage属性
  48. backgroundImage: 'linear-gradient(to top, #fff, rgba(255, 255, 255, 0.5))',
  49. // #endif
  50. paddingTop: '100px',
  51. marginTop: '-100px'
  52. })
  53. },
  54. // 段落首行缩进的字符个数
  55. textIndent: {
  56. type: String,
  57. default: () => defProps.readMore.textIndent
  58. },
  59. // open和close事件时,将此参数返回在回调参数中
  60. name: {
  61. type: [String, Number],
  62. default: () => defProps.readMore.name
  63. }
  64. }
  65. })