目录:

效果图

视图及样式

业务逻辑层

日期选择器效果图

多列选择器效果图

 

滚动选择器组件:<picker>

效果图:

鸿蒙js开发10 从底部弹起的滚动选择器

视图及样式:

  1. <div class="container">
  2. <div class="contentdiv">
  3. <!--picker组件:从底部弹起的滚动选择器-->
  4. <picker class="pickerdiv" type="text" range="{{areadatas}}" onchange="changearea">选择地区</picker>
  5. <input class="inputdiv" type="text" value="{{area}}" placeholder="选择地区"></input>
  6. </div>
  7. <!--多列选择器 type="multi-text"-->
  8. <div class="contentdiv">
  9. <picker class="pickerdiv" type="multi-text" range="{{areadatas2}}" onchange="changearea2">选择地区</picker>
  10. <input class="inputdiv" type="text" value="{{area2}}" placeholder="选择地区"></input>
  11. </div>
  12. <!--日期选择器 type="date"-->
  13. <div class="contentdiv">
  14. <picker class="pickerdiv" type="date" onchange="changedate">选择日期</picker>
  15. <input class="inputdiv" type="date" value="{{date}}" placeholder="选择日期"></input>
  16. </div>
  17. </div>
  1. .container {
  2. width: 100%;
  3. height: 1300px;
  4. display: flex;
  5. flex-direction: column;
  6. }
  7. .contentdiv{
  8. width: 100%;
  9. height: 30%;
  10. border-bottom: 2px solid black;
  11. display: flex;
  12. align-items: center;
  13. flex-direction: row;
  14. }
  15. .pickerdiv{
  16. width: 200px;
  17. height: 80px;
  18. background-color: darksalmon;
  19. }
  20. .inputdiv{
  21. width: 300px;
  22. height: 80px;
  23. margin-left: 20px;
  24. border: 1px solid silver;
  25. }

 

选择器组件<picker>提供了五种可选属性:文本选择器、多列文本选择器、日期选择器、日期+时间选择器以及时间选择器,

鸿蒙的开发工具提示的日期选择器存在一处错误:提示的日期选择器写成了data,此处应改为”date”

鸿蒙js开发10 从底部弹起的滚动选择器

鸿蒙js开发10 从底部弹起的滚动选择器

业务逻辑层:

  1. import prompt from '@system.prompt';
  2. export default {
  3. data: {
  4. areadatas:["中国","美国","日本","巴西"],
  5. area:"",
  6. areadatas2:[["江苏","浙江"],["南京","徐州"],["鼓楼","江宁","浦口"]],
  7. area2:"",
  8. date:""
  9. },
  10. changearea(e){
  11. let area = e.newValue;
  12. prompt.showToast({
  13. message:"您选择的地区是:"+area
  14. });
  15. this.area = area;
  16. },
  17. changearea2(e){
  18. //多个文本值,选出来的数据类型是数组类型(object)
  19. let areavalue = e.newValue;
  20. prompt.showToast({
  21. message:"选择的值为:"+(typeof areavalue)+areavalue
  22. });
  23. this.area2 = areavalue;
  24. },
  25. changedate(e){
  26. let year = e.year;
  27. let month = e.month+1;
  28. let day = e.day;
  29. prompt.showToast({
  30. message:"您选择的日期是:"+year+"/"+month+"/"+day
  31. });
  32. this.date = year+"/"+month+"/"+day;
  33. }
  34. }

日期选择器效果图:

鸿蒙js开发10 从底部弹起的滚动选择器

多列选择器效果图:

鸿蒙js开发10 从底部弹起的滚动选择器

 

作者:lsfzzf

想了解更多内容,请访问: 51CTO和华为官方战略合作共建的鸿蒙技术社区https://harmonyos.51cto.com

版权声明:本文为HarmonyOS原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/HarmonyOS/p/14344822.html