Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
muChangApp
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
WitCloud
muChangApp
Commits
b3c4bb8b
Commit
b3c4bb8b
authored
Dec 11, 2019
by
yating.lin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改手机物理返回键的功能(按下后 跳转至上级页面,非上一次的页面)
parent
072dfe3d
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
126 additions
and
20 deletions
+126
-20
config.xml
config.xml
+1
-1
app.component.ts
src/app/app.component.ts
+59
-7
env-alarm-detail.page.ts
src/app/envCtrl/env-alarm-detail/env-alarm-detail.page.ts
+3
-3
env-cfg.page.ts
src/app/envCtrl/env-cfg/env-cfg.page.ts
+1
-1
env-detail.page.html
src/app/envCtrl/env-detail/env-detail.page.html
+2
-2
env-detail.page.ts
src/app/envCtrl/env-detail/env-detail.page.ts
+2
-2
env-fan.page.ts
src/app/envCtrl/env-fan/env-fan.page.ts
+1
-1
env-history.page.ts
src/app/envCtrl/env-history/env-history.page.ts
+5
-1
env-home.page.ts
src/app/envCtrl/env-home/env-home.page.ts
+1
-1
env-light.page.ts
src/app/envCtrl/env-light/env-light.page.ts
+1
-1
back.ts
src/app/service/back.ts
+50
-0
No files found.
config.xml
View file @
b3c4bb8b
<?xml version='1.0' encoding='utf-8'?>
<widget
id=
"com.witium.muchang.test"
version=
"2.9.6.
4
"
xmlns=
"http://www.w3.org/ns/widgets"
xmlns:cdv=
"http://cordova.apache.org/ns/1.0"
>
<widget
id=
"com.witium.muchang.test"
version=
"2.9.6.
6.7
"
xmlns=
"http://www.w3.org/ns/widgets"
xmlns:cdv=
"http://cordova.apache.org/ns/1.0"
>
<name>
牧场云
</name>
<description>
test
</description>
<author
email=
"frank.feng@witium.com"
href=
"http://muchang.witium.com/"
>
Van.chen - frank.feng
</author>
...
...
src/app/app.component.ts
View file @
b3c4bb8b
import
{
Component
,
AfterViewInit
,
OnDestroy
}
from
'@angular/core'
;
import
{
NavController
,
Platform
}
from
'@ionic/angular'
;
import
{
ActionSheetController
,
AlertController
,
MenuController
,
ModalController
,
NavController
,
Platform
,
PopoverController
}
from
'@ionic/angular'
;
import
{
SplashScreen
}
from
'@ionic-native/splash-screen/ngx'
;
import
{
StatusBar
}
from
'@ionic-native/status-bar/ngx'
;
import
{
Router
,
NavigationEnd
}
from
'@angular/router'
;
...
...
@@ -7,6 +15,7 @@ import {AppMinimize} from '@ionic-native/app-minimize/ngx';
import
{
Mqtt
}
from
'./service/mqtt'
;
import
{
Load
}
from
'./service/load'
;
import
{
Loading
}
from
'./service/loading'
;
import
{
Api
}
from
'./service/api'
;
declare
var
screen
:
any
;
...
...
@@ -104,7 +113,13 @@ export class AppComponent implements AfterViewInit, OnDestroy {
private
mqtt
:
Mqtt
,
public
load
:
Load
,
public
loading
:
Loading
,
private
nav
:
NavController
private
nav
:
NavController
,
public
alertController
:
AlertController
,
public
modalCtrl
:
ModalController
,
public
menuCtrl
:
MenuController
,
public
actionSheetCtrl
:
ActionSheetController
,
public
popoverCtrl
:
PopoverController
,
private
api
:
Api
)
{
this
.
initializeApp
();
}
...
...
@@ -155,7 +170,8 @@ export class AppComponent implements AfterViewInit, OnDestroy {
}
registerBackButtonAction
()
{
this
.
platform
.
backButton
.
subscribe
(()
=>
{
this
.
platform
.
backButton
.
subscribe
(
()
=>
{
this
.
androidBackButtonHandle
();
if
(
this
.
url
===
'/index'
||
this
.
url
===
'/login'
)
{
if
(
this
.
backBtnPressed
)
{
this
.
appMinimize
.
minimize
();
...
...
@@ -167,11 +183,47 @@ export class AppComponent implements AfterViewInit, OnDestroy {
setTimeout
(()
=>
this
.
backBtnPressed
=
false
,
2000
);
}
}
else
{
this
.
backBtnPressed
=
true
;
setTimeout
(()
=>
this
.
backBtnPressed
=
false
,
2000
);
if
(
this
.
url
.
indexOf
(
'/env-detail/fan'
)
>=
0
||
this
.
url
.
indexOf
(
'/env-detail/light'
)
>=
0
||
this
.
url
.
indexOf
(
'/env-detail/shower'
)
>=
0
||
this
.
url
.
indexOf
(
'/env-detail/waterchannel'
)
>=
0
)
{
this
.
nav
.
navigateRoot
(
'/tabs/tab-home'
);
return
;
}
else
if
(
this
.
url
===
'/tabs/tab-home'
||
this
.
url
===
'/tabs/tab-anal'
||
this
.
url
===
'/tabs/tab-alarm'
||
this
.
url
===
'/tabs/tab-cfg'
)
{
this
.
nav
.
navigateRoot
(
'/index'
);
return
;
}
else
{
this
.
nav
.
back
();
return
;
}
}
this
.
nav
.
back
();
return
;
});
}
async
androidBackButtonHandle
()
{
try
{
const
alert
=
await
this
.
alertController
.
getTop
();
const
action
=
await
this
.
actionSheetCtrl
.
getTop
();
const
popover
=
await
this
.
popoverCtrl
.
getTop
();
const
modal
=
await
this
.
modalCtrl
.
getTop
();
const
isOpen
=
await
this
.
menuCtrl
.
isOpen
();
if
(
alert
)
{
alert
.
dismiss
();
}
else
if
(
action
)
{
action
.
dismiss
();
}
else
if
(
popover
)
{
popover
.
dismiss
();
}
else
if
(
modal
)
{
modal
.
dismiss
();
}
else
if
(
isOpen
)
{
this
.
menuCtrl
.
close
();
}
}
catch
(
error
)
{
}
}
}
src/app/envCtrl/env-alarm-detail/env-alarm-detail.page.ts
View file @
b3c4bb8b
...
...
@@ -63,7 +63,7 @@ export class EnvAlarmDetailPage implements OnInit {
// @ViewChild('currentItem') currentItem;
constructor
(
private
ac
:
ActivatedRoute
,
private
api
:
Api
,
public
load
:
Load
,
public
loadingController
:
LoadingController
,
p
rivate
alterController
:
AlertController
,
private
datePipe
:
DatePipe
,
public
loading
:
Loading
,
p
ublic
alterController
:
AlertController
,
private
datePipe
:
DatePipe
,
public
loading
:
Loading
,
public
eventService
:
EventService
)
{
}
...
...
@@ -246,7 +246,7 @@ export class EnvAlarmDetailPage implements OnInit {
event
.
target
.
complete
();
// App logic to determine if all data is loaded
// and disable the infinite scroll
await
this
.
wait
(
10
00
);
await
this
.
wait
(
5
00
);
if
(
this
.
troubleList
.
length
===
this
.
detailInfoLength
)
{
event
.
target
.
disabled
=
true
;
}
...
...
@@ -379,7 +379,7 @@ export class EnvAlarmDetailPage implements OnInit {
cssClass
:
'main-color'
,
mode
:
'ios'
,
message
:
''
,
duration
:
10
00
duration
:
5
00
});
await
loading
.
present
();
...
...
src/app/envCtrl/env-cfg/env-cfg.page.ts
View file @
b3c4bb8b
...
...
@@ -35,7 +35,7 @@ export class EnvCfgPage implements OnInit {
{
alarmId
:
'平台'
,
alarmValue
:
'平台'
},
{
alarmId
:
'平台/短信'
,
alarmValue
:
'平/短'
}];
constructor
(
public
alertCtrl
:
AlertController
,
private
pickerController
:
PickerController
,
p
rivate
alertController
:
AlertController
,
constructor
(
public
alertCtrl
:
AlertController
,
private
pickerController
:
PickerController
,
p
ublic
alertController
:
AlertController
,
private
api
:
Api
,
private
load
:
Load
,
public
nav
:
NavController
,
private
tf
:
Transfer
,
private
ac
:
ActivatedRoute
,
private
datePipe
:
DatePipe
,
public
loading
:
Loading
)
{
}
...
...
src/app/envCtrl/env-detail/env-detail.page.html
View file @
b3c4bb8b
<ion-header>
<ion-toolbar
color=
"dark"
>
<ion-toolbar
color=
"dark"
mode=
"ios"
>
<ion-buttons
slot=
"start"
>
<ion-back-button
mode=
"ios"
text=
""
></ion-back-button>
</ion-buttons>
...
...
@@ -30,7 +30,7 @@
</ion-header>
<ion-content
color=
"light"
>
<ion-router-outlet></ion-router-outlet>
<ion-tabs>
<ion-tabs
#
tabs
>
<ion-tab-bar
slot=
"top"
mode=
"ios"
style=
"--border: 0px;"
>
<ion-tab-button
tab=
"fan"
class=
"tabSelected ion-segment-button"
>
<ion-label>
风机
</ion-label>
...
...
src/app/envCtrl/env-detail/env-detail.page.ts
View file @
b3c4bb8b
import
{
Component
,
OnInit
}
from
'@angular/core'
;
import
{
Component
,
OnInit
,
ViewChild
}
from
'@angular/core'
;
import
{
Api
}
from
'../../service/api'
;
import
{
NavController
}
from
'@ionic/angular'
;
import
{
NavController
,
Platform
}
from
'@ionic/angular'
;
import
{
ActivatedRoute
}
from
'@angular/router'
;
import
{
Load
}
from
'../../service/load'
;
import
{
Transfer
}
from
'../../service/transfer'
;
...
...
src/app/envCtrl/env-fan/env-fan.page.ts
View file @
b3c4bb8b
...
...
@@ -47,7 +47,7 @@ export class EnvFanPage implements OnInit {
commTmr
:
any
;
constructor
(
private
api
:
Api
,
private
ac
:
ActivatedRoute
,
private
load
:
Load
,
p
rivate
alertController
:
AlertController
,
constructor
(
private
api
:
Api
,
private
ac
:
ActivatedRoute
,
private
load
:
Load
,
p
ublic
alertController
:
AlertController
,
public
loading
:
Loading
,
public
eventService
:
EventService
)
{
this
.
ac
.
queryParams
.
subscribe
((
data
)
=>
{
if
(
data
&&
data
.
fieldRegionNo
!==
undefined
&&
data
.
fieldRegionNo
!==
null
&&
data
.
fieldRegionNo
!==
''
)
{
...
...
src/app/envCtrl/env-history/env-history.page.ts
View file @
b3c4bb8b
...
...
@@ -5,6 +5,8 @@ import {Load} from '../../service/load';
import
{
NgxDatatableModule
,
ColumnMode
}
from
'@swimlane/ngx-datatable'
;
import
{
DateFormatter
}
from
'@angular/common/src/pipes/deprecated/intl'
;
import
{
DatePipe
}
from
'@angular/common'
;
import
{
Constants
}
from
'../../service/constants'
;
import
{
Loading
}
from
'../../service/loading'
;
@
Component
({
selector
:
'v-env-history'
,
...
...
@@ -14,7 +16,7 @@ import {DatePipe} from '@angular/common';
export
class
EnvHistoryPage
implements
OnInit
{
ColumnMode
=
ColumnMode
;
constructor
(
private
api
:
Api
,
private
ac
:
ActivatedRoute
,
private
load
:
Load
,
private
datePipe
:
DatePipe
)
{
constructor
(
private
api
:
Api
,
private
ac
:
ActivatedRoute
,
private
load
:
Load
,
private
datePipe
:
DatePipe
,
public
loading
:
Loading
)
{
}
fieldRegionNo
=
''
;
...
...
@@ -113,6 +115,7 @@ export class EnvHistoryPage implements OnInit {
if
(
time
)
{
this
.
load
.
toLoad
(
'加载中...'
,
false
);
}
this
.
loading
.
presentLoading
(
Constants
.
LOADING_SHORTER
,
false
);
const
req
:
any
=
{};
req
.
fieldRegionNo
=
this
.
fieldRegionNo
;
req
.
startTime
=
new
Date
().
valueOf
()
-
8
*
3600
*
1000
;
...
...
@@ -121,6 +124,7 @@ export class EnvHistoryPage implements OnInit {
if
(
data
)
{
this
.
paintChart
(
data
);
}
this
.
loading
.
closeLoading
();
}]);
req
.
counts
=
10
;
...
...
src/app/envCtrl/env-home/env-home.page.ts
View file @
b3c4bb8b
...
...
@@ -3,7 +3,7 @@ import {ActivatedRoute} from '@angular/router';
import
{
Transfer
}
from
'../../service/transfer'
;
import
{
Api
}
from
'../../service/api'
;
import
{
Load
}
from
'../../service/load'
;
import
{
Nav
Controller
}
from
'@ionic/angular'
;
import
{
ActionSheetController
,
AlertController
,
MenuController
,
ModalController
,
NavController
,
Popover
Controller
}
from
'@ionic/angular'
;
import
{
Network
}
from
'@ionic-native/network/ngx'
;
import
{
EventService
}
from
'../../service/event'
;
...
...
src/app/envCtrl/env-light/env-light.page.ts
View file @
b3c4bb8b
...
...
@@ -58,7 +58,7 @@ export class EnvLightPage implements OnInit {
commTmr
:
any
;
constructor
(
private
api
:
Api
,
private
ac
:
ActivatedRoute
,
private
load
:
Load
,
private
route
:
ActivatedRoute
,
p
rivate
alertControlle
:
AlertController
,
public
loading
:
Loading
,
private
eventService
:
EventService
)
{
p
ublic
alertControlle
:
AlertController
,
public
loading
:
Loading
,
private
eventService
:
EventService
)
{
}
ionViewWillLeave
()
{
...
...
src/app/service/back.ts
0 → 100644
View file @
b3c4bb8b
import
{
Injectable
}
from
'@angular/core'
;
import
{
ActionSheetController
,
AlertController
,
MenuController
,
ModalController
,
NavController
,
PopoverController
}
from
'@ionic/angular'
;
@
Injectable
()
export
class
BackService
{
tabsCanGoBack
=
false
;
tabsParentCanGoBack
=
false
;
constructor
(
public
nav
:
NavController
,
public
alertCtrl
:
AlertController
,
public
modalCtrl
:
ModalController
,
public
menuCtrl
:
MenuController
,
public
actionSheetCtrl
:
ActionSheetController
,
public
popoverCtrl
:
PopoverController
)
{}
async
androidBackButtonHandle
(
next
)
{
try
{
const
alert
=
await
this
.
alertCtrl
.
getTop
();
if
(
alert
)
{
alert
.
dismiss
();
return
;
}
const
action
=
await
this
.
actionSheetCtrl
.
getTop
();
if
(
action
)
{
action
.
dismiss
();
return
;
}
const
popover
=
await
this
.
popoverCtrl
.
getTop
();
if
(
popover
)
{
popover
.
dismiss
();
return
;
}
const
modal
=
await
this
.
modalCtrl
.
getTop
();
if
(
modal
)
{
modal
.
dismiss
();
return
;
}
const
isOpen
=
await
this
.
menuCtrl
.
isOpen
();
if
(
isOpen
)
{
this
.
menuCtrl
.
close
();
return
;
}
if
(
!
this
.
tabsCanGoBack
&&
!
this
.
tabsParentCanGoBack
)
{
// this.native.appMinimize();
this
.
nav
.
navigateRoot
(
'/'
+
next
);
return
;
}
}
catch
(
error
)
{
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment