当前位置:网站首页>Hongmeng OS' fourth learning
Hongmeng OS' fourth learning
2022-07-05 20:25:00 【Taoping】
Target interface :

One 、 The implementation of the search box
stay common Create under folder search Folder (.hml,.css,.js)
.hml
<div class="search-container">
<div class="search-input">
<image class="search-input-image" src="/common/images/search.png"></image>
<text class="search-input-text"> Search here for what you want , For example, Sichuan cuisine </text>
</div>
</div>.css
.search-container {
padding: 10px 15px;
}
.search-input {
height: 40px;
width: 100%;
justify-content: center;
align-items: center;
border-radius: 6px;
border: 0.5px solid #ee742f;
}
.search-input-image {
width: 20px;
height: 20px;
}
.search-input-text {
font-size: 12px;
font-weight: 100;
}
.index-inner-bg {
background-color: #fff;
}
.cate-inner-bg {
background-color: #f2f2f2;
border-width: 0;
}
.index-outer-bg {
background-color: #f2f2f2;
}
.cate-outer-bg {
background-color: #fff;
}
Two 、 Top level effect realization
.hml
<element name="cb-menu"src="./menu/menu"></element>
<element name='comp' src='../../../components/tabbar/tabbar.hml'></element>
<element name='cb-search' src="../../../common/components/search/search"></element>
<div class="cate-container">
<div class="cate-header">
<div class="cate-header-nav">
<div class="cate-header-nav-item" @click="handleSliderClick('category')">
<text class="item-text">
classification
</text>
</div>
<div class="cate-header-nav-item" @click="handleSliderClick('material')">
<text class="item-text">
The ingredients
</text>
</div>
<div if="{
{type==='category'}}" class="cate-header-nav-slider">
<text class="slider-text">
classification
</text>
</div>
<div else class="cate-header-nav-slider move">
<text class="slider-text">
The ingredients
</text>
</div>
</div>
</div>
<comp index="1"></comp>
<cb-search from="cate"></cb-search>
<cb-menu menu-data="{
{filteredMenuData}}" first-item="{
{type==='category'?' hot ':' meat '}}"></cb-menu>
</div>.css
.cate-container {
flex-direction: column;
}
.cate-header {
width: 100%;
height: 44px;
background-color: #ee742f;
justify-content: center;
align-items: center;
}
.cate-header-nav {
width: 140px;
height: 30px;
border-radius: 30px;
border: 0.5px solid #FFF;
position: relative;
z-index: 1;
}
.cate-header-nav-item {
flex: 1;
justify-content: center;
align-items: center;
height: 30px;
}
.item-text {
font-size: 12px;
color: #FFF;
}
.cate-header-nav-slider {
position: absolute;
left: 0;
border-radius: 30px;
width: 70px;
height: 30px;
background-color: #FFF;
z-index: 0;
justify-content: center;
align-items: center;
transition: left 200ms ease-in;
}
.slider-text {
font-size: 12px;
color: #ee742f;
}
.move {
left: 70px;
}
.js
// @ts-nocheck
import menuData from "../../../common/data/cookbook-category.json"
export default{
data:{
type:'category',
menuData:[],
},
handleSliderClick(type){
this.type = type
},
computed:{
filteredMenuData(){
return this.menuData[this.type]
}
},
onInit(){
this.menuData = menuData.data
}
}3、 ... and 、 The realization of menu function
stay category Create menu Folder
.hml
<div class="menu-container">
<div class="menu-tab">
<div
class="menu-tab-item {
{$item === currenTab?'menu-tab-item-active':'menu-tab-item-normal'}}"
for="{
{tabs}}"
@click="handleTabClick($item)"
>
<text class="menu-tab-item-text">
{
{$item}}
</text>
</div>
</div>
<div class="menu-list">
<div class="menu-list-item" for="{
{lists}}">
<text class="menu-list-item-text">
<span>{
{$item}}</span>
</text>
</div>
</div>
</div>.css
.menu-container {
flex: 1;
border-top: 0.5px solid #CCC;
}
.menu-tab {
width: 100px;
background-color: #f3f3f3;
flex-direction: column;
}
.menu-tab-item {
height: 34px;
justify-content: center;
align-items: center;
width: 100px;
}
.menu-tab-item-text {
font-size: 12px;
font-weight: 100;
height: 100%;
/* align-content: stretch;*/
}
.menu-tab-item-normal {
background-color: #f3f3f3;
}
.menu-tab-item-text-normal {
/* font-size: 12px;*/
/* font-weight: 100;*/
/* height: 100%;*/
/* align-content: stretch;*/
color: #000;
border-bottom: 0;
}
.menu-tab-item-active {
background-color: #FFF;
}
.menu-tab-item-text-active {
font-size: 12px;
font-weight: 100;
height: 100%;
/* align-content: stretch;*/
/* color: #ee742f;*/
/* border-bottom: 2px solid #ee742f;*/
}
.menu-list {
flex: 1;
flex-wrap: wrap;
}
.menu-list-item {
width: 33.333333%;
height: 40px;
justify-content: center;
align-items: center;
}
.menu-list-item-text {
font-size: 12px;
font-weight: bold;
}
.js
export default{
props:['menuData','firstItem'],
data(){
return{
currentTab:this.firstItem
}
},
computed:{
tabs(){
return Object.keys(this.menuData)
},
lists(){
return this.menuData[this.currentTab]
}
},
handleTabClick(currentTab){
this.currentTab = currentTab
},
onReady() {
this.$watch('firstItem', (newValue) => {
this.currentTab = newValue
})
}
}边栏推荐
- CTF reverse Foundation
- Guidelines for application of Shenzhen green and low carbon industry support plan in 2023
- 1:引文;
- Oracle tablespace management
- 【数字IC验证快速入门】9、Verilog RTL设计必会的有限状态机(FSM)
- 死信队列入门(两个消费者,一个生产者)
- Leetcode skimming: binary tree 10 (number of nodes of a complete binary tree)
- Solve the problem that the database configuration information under the ThinkPHP framework application directory is still connected by default after modification
- 炒股开户最低佣金,低佣金开户去哪里手机上开户安全吗
- Zero cloud new UI design
猜你喜欢

Rainbond 5.7.1 支持对接多家公有云和集群异常报警

Leetcode (695) - the largest area of an island

解决php无法将string转换为json的办法

14、Transformer--VIT TNT BETR

ROS2专题【01】:win10上安装ROS2

【刷题记录】1. 两数之和

IC科普文:ECO的那些事儿
![[quick start of Digital IC Verification] 3. Introduction to the whole process of Digital IC Design](/img/92/7af0db21b3d7892bdc5dce50ca332e.png)
[quick start of Digital IC Verification] 3. Introduction to the whole process of Digital IC Design

【数字IC验证快速入门】6、Questasim 快速上手使用(以全加器设计与验证为例)

【数字IC验证快速入门】7、验证岗位中必备的数字电路基础知识(含常见面试题)
随机推荐
DP: tree DP
BZOJ 3747 POI2015 Kinoman 段树
Go language learning tutorial (16)
19 mongoose modularization
2.8、项目管理过程基础知识
Ffplay document [easy to understand]
2022北京眼睛健康用品展,护眼产品展,中国眼博会11月举办
【数字IC验证快速入门】6、Questasim 快速上手使用(以全加器设计与验证为例)
Dry goods navigation in this quarter | Q2 2022
常用的视图容器类组件
Oracle tablespace management
.Net分布式事务及落地解决方案
本季度干货导航 | 2022年Q2
Leetcode (347) - top k high frequency elements
A way to calculate LNX
Notes on key vocabulary in the English original of the biography of jobs (12) [chapter ten & eleven]
. Net distributed transaction and landing solution
Fundamentals - configuration file analysis
鸿蒙系统控制LED的实现方法之经典
Unity editor extended UI control