index.vue 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <template>
  2. <view class="u-demo">
  3. <view class="u-demo-wrap">
  4. <view class="u-demo-title">演示效果</view>
  5. <view class="u-demo-area">
  6. <view class="u-no-demo-here">
  7. 源字符串:{{`"${string}"`}}
  8. </view>
  9. <view class="u-demo-result-line">
  10. {{`"${result}"`}}
  11. </view>
  12. </view>
  13. </view>
  14. <view class="u-config-wrap">
  15. <view class="u-config-title u-border-bottom">
  16. 参数配置
  17. </view>
  18. <view class="u-config-item">
  19. <view class="u-item-title">模式选择</view>
  20. <u-subsection :list="['左空格', '全部空格', '两边空格', '右空格']" @change="modeChange"></u-subsection>
  21. </view>
  22. </view>
  23. </view>
  24. </template>
  25. <script>
  26. export default {
  27. data() {
  28. return {
  29. string: " 我用十年 青春,赴你 最后之约 ",
  30. result: '',
  31. pos: 'left'
  32. }
  33. },
  34. onLoad() {
  35. this.getResult();
  36. },
  37. methods: {
  38. paramsChange(index) {
  39. if(index == 0) {
  40. this.min = 0;
  41. this.max = 5;
  42. } else {
  43. this.min = 541;
  44. this.max = 8164;
  45. }
  46. this.getResult();
  47. },
  48. modeChange(index) {
  49. this.pos = index == 0 ? 'left' : index == 1 ? 'all' : index == 2 ? 'both' : 'right';
  50. this.getResult();
  51. },
  52. getResult() {
  53. this.result = this.$u.trim(this.string, this.pos);
  54. }
  55. }
  56. }
  57. </script>
  58. <style lang="scss" scoped>
  59. .u-demo {}
  60. </style>