feat: 电子药箱小程序 - 4Tab药品管理
- 电子药箱: 药品库存管理 + 手动录入 + 今日用药打卡 - 药品百科: 搜索 + 分类筛选 + 20种药品静态数据 - 惠教中心: 4条药品使用指南课程 - 我的: 家庭成员信息管理 - 自定义TabBar + navigation-bar组件 - SVG药品分类插图
This commit is contained in:
+1
@@ -0,0 +1 @@
|
||||
"use strict";var _utils=require("../../../utils/utils"),_constant=require("../../../utils/constant"),_theme=require("../../../utils/theme");function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,o)}return n}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(n),!0).forEach(function(t){_defineProperty(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function _defineProperty(e,t,n){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return"symbol"===_typeof(t)?t:String(t)}function _toPrimitive(e,t){if("object"!==_typeof(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!==_typeof(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}Component({options:{styleIsolation:"shared"},properties:{sdkInstance:{type:Object,value:null}},data:{visible:!1,data:null,useDarkTheme:!1},lifetimes:{detached:function(){"function"==typeof this.unsub&&this.unsub(),this.unsub=null}},observers:{sdkInstance:function(e){var t=this;e&&(this.sdkInstance=e,this.store=e.store,"function"==typeof this.unsub&&this.unsub(),this.unsub=null,this.unsub=this.store.get({AnnouncementInfo:function(e){var n,o=e||{},r=o.visible,i=o.currentId;r&&i&&t.openAnnouncement(i),!r&&t.data.visible&&(null===(n=t.selectComponent("#announcement-drawer"))||void 0===n||n.hideFrame({silent:!0})),(0,_utils.setDataIfChanged)(t,{visible:!!r})},liveInfo:function(e){(0,_utils.setDataIfChanged)(t,{useDarkTheme:(0,_theme.isUseDarkTheme)(null==e?void 0:e.Basic)})}}))}},methods:{findAnnouncement:function(e){for(var t,n=(null===(t=this.store)||void 0===t?void 0:t.get("imageTextInfo.imageText"))||[],o=0;o<n.length;o+=1)for(var r,i=(null===(r=n[o])||void 0===r?void 0:r.Context)||[],u=0;u<i.length;u+=1){var s,l=i[u];if((null==l?void 0:l.ImageTextType)===_constant.ImageTextTypes.ANNOUNCEMENT&&String(null==l||null===(s=l.AnnouncementContext)||void 0===s?void 0:s.AnnouncementId)===String(e))return l.AnnouncementContext}return null},openAnnouncement:function(e){var t,n=this.findAnnouncement(e);n?(this.setData({data:_objectSpread(_objectSpread({},n),{},{Title:(0,_utils.getBySplit)(n.Title||n.AnnouncementTitle||"公告"),ContentHtml:n.Content||"",ContentLinkPayload:{announcementId:n.AnnouncementId}})}),null===(t=this.selectComponent("#announcement-drawer"))||void 0===t||t.showFrame()):this.closeAnnouncementDrawer()},closeAnnouncementDrawer:function(){var e;null===(e=this.selectComponent("#announcement-drawer"))||void 0===e||e.hideFrame()},onAnnouncementDrawerCancel:function(){var e;null===(e=this.store)||void 0===e||e.set("AnnouncementInfo",_objectSpread(_objectSpread({},this.store.get("AnnouncementInfo")||{}),{},{visible:!1,currentId:null}))}}});
|
||||
+1
@@ -0,0 +1 @@
|
||||
{"component":true,"usingComponents":{"Drawer":"../../../pubComponents/drawer/drawer","mp-icon":"weui-miniprogram/icon/icon","volc-rich-text":"../../volc-rich-text/volc-rich-text"}}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
<Drawer
|
||||
id="announcement-drawer"
|
||||
custom-drawer="announcement-drawer-shell"
|
||||
needCancel="{{false}}"
|
||||
bind:myCancel="onAnnouncementDrawerCancel"
|
||||
>
|
||||
<view wx:if="{{visible && data}}" class="announcement-drawer {{useDarkTheme ? 'announcement-drawer-dark' : ''}}">
|
||||
<view class="announcement-header">
|
||||
<view class="announcement-title">{{data.Title}}</view>
|
||||
<mp-icon bindtap="closeAnnouncementDrawer" icon="close" color="{{useDarkTheme ? '#f2f3f5' : '#1d2129'}}" size="{{20}}" class="announcement-close-icon drawer-close-shadow" />
|
||||
</view>
|
||||
<scroll-view scroll-y class="announcement-content">
|
||||
<volc-rich-text
|
||||
sdk-instance="{{sdkInstance}}"
|
||||
html="{{data.ContentHtml}}"
|
||||
event-name="announcement.linkClick"
|
||||
jump-feature="announcementLink"
|
||||
link-payload="{{data.ContentLinkPayload}}"
|
||||
text-color="{{useDarkTheme ? '#f2f3f5' : '#1f2329'}}"
|
||||
dark="{{useDarkTheme}}"
|
||||
></volc-rich-text>
|
||||
</scroll-view>
|
||||
<view class="announcement-footer">
|
||||
<button class="announcement-confirm-btn" bindtap="closeAnnouncementDrawer">我知道了</button>
|
||||
</view>
|
||||
</view>
|
||||
</Drawer>
|
||||
+1
@@ -0,0 +1 @@
|
||||
.announcement-drawer-shell .frame{overflow:hidden;padding:0!important}.announcement-drawer{box-sizing:border-box;min-height:300px;background:#fff;color:#1f2329;border-radius:14px 14px 0 0;padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.announcement-drawer-dark{background:#1f2025;color:#f2f3f5}.announcement-header{display:flex;align-items:center;justify-content:space-between;padding:24rpx 40rpx 16rpx;background:transparent linear-gradient(180deg,#e7edff,#fff)}.announcement-title{flex:1;margin-right:24rpx;color:#1d2129;font-size:calc(34rpx + .5 * (1rem - 16px));font-weight:700;line-height:calc(48rpx + .5 * (1rem - 16px));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.announcement-close-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:56rpx;height:56rpx;border-radius:50%;background:0 0}.drawer-close-shadow{box-shadow:none}.announcement-content{box-sizing:border-box;min-height:360rpx;max-height:720rpx;padding:24rpx 40rpx;color:inherit;font-size:calc(30rpx + .5 * (1rem - 16px));line-height:1.7}.announcement-footer{padding:20rpx 40rpx 40rpx}.announcement-confirm-btn{width:100%!important;border-radius:100rpx;background-color:#3370ff!important;color:#fff!important;font-size:calc(32rpx + .5 * (1rem - 16px));font-weight:500}.announcement-confirm-btn::after{border:0}.announcement-drawer-dark .announcement-header{background:#1f2025}.announcement-drawer-dark .announcement-title{color:#fff}.announcement-drawer-dark .announcement-close-icon{background:rgba(255,255,255,.12)}
|
||||
Reference in New Issue
Block a user