上周一切顺利,当我在设备上运行应用程序或使用Genymotion进行模拟时,所有对api的调用都在工作(要么返回数据,要么失败但至少显示一些内容).
我在用
ionic run android
Run Code Online (Sandbox Code Playgroud)
我添加更新全球cordova离子:
npm install -g cordova ionic
Run Code Online (Sandbox Code Playgroud)
因为所有$ http请求都没有处理.当Api仍然正常工作并且CORS完美设置时,我无法得到任何响应.
我找到的唯一方法是使用选项--livereload或-l:
ionic run -l android
Run Code Online (Sandbox Code Playgroud)
我想避免不惜任何代价使用livereload.
我开始使用ionic 1.0.0和cordova lib 4.3.0从头开始创建一个项目.
angular.module('starter.controllers', [])
.controller('AppCtrl', function($scope, $ionicModal, $timeout, $http) {
alert('calling api');
// Create an anonymous access_token
$http
.get(domain+'/oauth/v2/token?client_id='+public_id+'&client_secret='+secret+'&grant_type=client_credentials')
.then(function(response){
alert(response.data.access_token);
});
})
Run Code Online (Sandbox Code Playgroud)
所以在使用时:
ionic serve
Run Code Online (Sandbox Code Playgroud)
它正确地警告"调用api"然后响应(该示例的OAuth访问令牌).
但在使用时:
ionic run android
Run Code Online (Sandbox Code Playgroud)
它仅警告'调用api'但似乎不处理http请求.
有人经历过类似的事吗?我对此感到非常头疼.
我添加了视口,其属性允许缩放/缩放.我将这些添加到本机代码中:
WebSettings settings = super.appView.getSettings();
settings.setBuiltInZoomControls(true);
settings.setDisplayZoomControls(true);
settings.setSupportZoom(true);
Run Code Online (Sandbox Code Playgroud)
我可以缩放,但随着我的视图,ion-header-bar并ion-nav-bar缩放.我尝试给标头css,以保持固定:
position: fixed;
top: 0px;
left: 0px;
Run Code Online (Sandbox Code Playgroud)
但它仍然会变焦.
我的index.html有一个ion-header-bar包含图像的.模板进入
<ion-nav-view class="has-header"></ion-nav-view>
Run Code Online (Sandbox Code Playgroud)
我需要放大特定div的模板有一个'离子视图',它看起来像:
<ion-view>
<ion-nav-bar class="bar-stable">
<ion-nav-buttons side="right">
icon1
</ion-nav-buttons>
<ion-nav-buttons side="left">
icon2
</ion-nav-buttons>
</ion-nav-bar>
<div>
Multiple divs in here, which are containers for html and css data we receive via AJAX requests. And this is here I need zooming in.
</div>
</ion-view>
Run Code Online (Sandbox Code Playgroud)
PS:如果我在里面添加一个完整的HTML代码(带有meta视口,没有标题,但是正文和div),这ion-view是否重要?
我的JSON数据如何的示例:
$scope.a = [{
"email": "keval@gmail",
"permissions": {
"upload": "1",
"edit": "1"
}
}, {
"email": "new@aa",
"permissions": {
"upload": "1",
"edit": "1"
}
}];
Run Code Online (Sandbox Code Playgroud)
我想发布相同的内容,这是我的方法:
$http({
method: 'POST',
url: 'backend/savePermissions.php',
data: {
mydata: $scope.a
},
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
})
.success(function(data) {
console.log(data);
});
Run Code Online (Sandbox Code Playgroud)
PHP将接受请求并做出回应:
echo $_POST['mydata'];
Run Code Online (Sandbox Code Playgroud)
我JSON.stringify在电话会议前试了一下,然后json_decode回复了它; 仍然没有奏效.一直在尝试我能想到的所有可能性,以及我在网络/其他问题上找到的,但仍然无法正常工作.