我有一个Rails和Ionic项目.后端使用devise_token_auth Gem和前端ng-token-auth; 这些应该是"无缝地"工作.
我已经将所有工作都注册并登录,这将返回一个有效的响应对象.但是,在我使用$ state.go('app.somepage')之后的任何进一步请求都会导致401 Unauthorized响应.
我觉得我实际上并没有将令牌存储在任何地方.有人可以帮忙吗?
以下是一些片段:
.controller('LoginCtrl',['$scope', '$auth', '$state', function($scope, $auth, $state) {
$scope.loginForm = {}
$scope.handleLoginBtnClick = function() {
console.log($scope.loginForm);
$auth.submitLogin($scope.loginForm)
.then(function(resp) {
$state.go('app.feed');
})
.catch(function(resp) {
console.log(resp.errors);
});
};
Run Code Online (Sandbox Code Playgroud)
州定义:
.state('app', {
url: "/app",
abstract: true,
templateUrl: "templates/menu.html",
controller: 'AppCtrl',
resolve: {
auth: function($auth) {
return $auth.validateUser();
}
}
})
Run Code Online (Sandbox Code Playgroud)
资源:
factory('Post', ['railsResourceFactory', 'apiUrl', function (railsResourceFactory, apiUrl) {
return railsResourceFactory({
url: apiUrl + '/posts',
name: 'post'
});
}]).
Run Code Online (Sandbox Code Playgroud)
在PostsCtrl中:
$scope.loadFeed = function() {
Post.query().then(function (posts) { …Run Code Online (Sandbox Code Playgroud) 目前我有一个看起来像这样的离子切换

我想做这个

反正有没有让这件事发生?我在某处读到了我可以使用ng-true-value和ng-false-value,但这似乎没有做我想要的
在我的Ionic/Angular移动应用程序中,我有一个类似Uber的地图,用户可以拖动地图来选择一个位置,并且总是有一个标记固定在中心.
所以,我的HTML看起来如下所示:
<ion-view cache-view="false" view-title="Choose location">
<ion-content has-header="true" class="new-meeting" has-bouncing="false">
<div id="chooseLocationMap" class="full-map"></div>
</ion-content>
</ion-view>
Run Code Online (Sandbox Code Playgroud)
SASS与此相关:
.full-map {
width: 100%;
height: 100%;
.center-marker {
position: absolute;
background: url(../img/default-marker.svg) -10px -5px;
top: 50%;
left: 50%;
z-index: 1;
width: 40px;
height: 50px;
margin-top: -50px;
margin-left: -22px;
cursor: pointer;
}
}
Run Code Online (Sandbox Code Playgroud)
最后,我的控制器处理地图的部分是这样的:
function initialize() {
var initialPosition = loadStoredPosition();
var mapOptions = {
zoom: 16,
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDefaultUI: true
};
map = new google.maps.Map(document.getElementById('chooseLocationMap'), mapOptions);
google.maps.event.addListener(map, 'center_changed', function …Run Code Online (Sandbox Code Playgroud) google-maps google-maps-api-3 angularjs ionic-framework ionic
每当我使用离子platform add [platformname]它给我这个错误
错误: 在Object.exports的Object.exports.spawn(child_process.js:988:9)的 ChildProcess.spawn(child_process.js:1155:11)的exports._errnoException
(util.js:746:11)
处生成EACCES . runwn(/ usr/local/lib/node_modules/cordova/node_modules/cordova- lib/src/cordova/superspawn.js:100:31) at runScriptViaChildProcessSpawn(/ usr/local/lib/node_modules/cordova/node_modules/cordova- lib /src/hooks/HooksRunner.js:188:23) 在runScript中(在/ usr /本地/ LIB/node_modules /科尔多瓦/ node_modules/cordova- LIB/SRC /钩/ HooksRunner.js:131:16) 位于/ usr /本地/ lib/node_modules/cordova/node_modules/cordova- lib/src/hooks/HooksRunner.js:114:20 at _fulfilled(/usr/local/lib/node_modules/cordova/node_modules/q/q.js:787:54) 在promise.promise.promiseDispatch的self.promiseDispatch.done(/usr/local/lib/node_modules/cordova/node_modules/q/q.js:816:30) (/ usr/local/lib/node_modules/cordova/node_modules/q/q.js:749:13)
在我的第一个Ionic项目上工作.
我对启动画面没有任何问题 - 我可以使用CordovaSplashscreen插件并告诉它隐藏()当相关的承诺解决; 我也可以注释掉隐藏,而只是依赖于在config.xml中使用AutoHideSplashScreen,并且在SplashScreenDelay之后让启动画面自动隐藏.
(我列出这些事情,做工作,所以很显然,我的问题是不是几十离子和科尔多瓦/的重复PhoneGap的相关闪屏的问题.)
我的问题是,无论我尝试什么 - ios,android,模拟器,真实设备,使用CordovaSplashscreen隐藏()或不,AutoHideSplashScreen设置为true,AutoHideSplashScreen设置为false等 - 我无法得到启发屏幕在消失时消失.
无论config.xml设置,splash screen hide()调用或不调用,仿真或设备,ios或我使用的是什么组合,FadeSplashScreen似乎都没有任何影响.
我当前的config.xml设置,虽然这并没有提供我尝试过的十几个这些值的完整描述:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<widget id="com.ionicframework.yourkids381244" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
... other code at same level of hierarchy omitted ...
<preference name="SplashScreen" value="screen"/>
<preference name="AutoHideSplashScreen" value="false"/>
<preference name="auto-hide-splash-screen" value="false"/>
<preference name="ShowSplashScreenSpinner" value="false"/>
<preference name="SplashScreenDelay" value="10000"/>
<preference name="FadeSplashScreen" value="true"/>
<preference name="FadeSplashScreenDuration" value="3.0"/>
... other code at same level of hierarchy omitted ...
</widget>
Run Code Online (Sandbox Code Playgroud)
来自我的app.js路由的代码执行hide(),但是,这似乎不是问题的一部分; 它工作,我通过注释hide()行并将AutoHideSplashScreen设置为false来确认,这成功地导致启动屏幕永远不会隐藏; 但是从那个状态,我无法隐藏淡出闪屏,无论是通过取消注释hide()行来隐藏使用CordovaSplashscreen,还是将AutoHideSplashScreen设置为true.
.state('app.main', {
url: "/main",
views: {
'menuContent': …Run Code Online (Sandbox Code Playgroud) 使用--live-reload参数时,我无法在手机上看到我的离子应用程序.
我使用的是Windows 8.1和连接的Nexus 5 Android设备.该应用程序是使用创建的示例sidemenu应用程序ionic start demo sidemenu.
当我运行时ionic run --live-reload,我首先通过可能的IP地址列表呈现:
Multiple addresses available.
Please select which address to use by entering its number from the list below:
Note that the emulator/device must be able to access the given IP address
1) 192.168.0.109 (Wi-Fi)
2) 192.168.159.1 (VMware Network Adapter VMnet1)
3) 192.168.174.1 (VMware Network Adapter VMnet8)
4) 192.168.56.1 (VirtualBox Host-Only Network)
Run Code Online (Sandbox Code Playgroud)
我选择选项1 - 这是我的开发PC的IP地址,即托管离子服务器.
Ionic确认此选择,并确认它正在为端口提供服务,如下所示:
Selected address: 192.168.0.109
Running live reload server: …Run Code Online (Sandbox Code Playgroud) 我想展示内容.我在自定义模板文件上手动添加了自定义代码.
<ion-content>
<ion-tabs class="tabs-positive tabs-icon-only">
<ion-tab title="Home" icon-on="ion-ios-filing" icon-off="ion-ios-filing-outline">
My Content here
</ion-tab>
<ion-tab title="About" icon-on="ion-ios-clock" icon-off="ion-ios-clock-outline">
My Content here 1
</ion-tab>
<ion-tab title="Settings" icon-on="ion-ios-gear" icon-off="ion-ios-gear-outline">
My Content here 3
</ion-tab>
</ion-tabs>
</ion-content>
</ion-view>
Run Code Online (Sandbox Code Playgroud)
我从这里拿了示例代码
http://ionicframework.com/docs/api/directive/ionTabs/
我能够看到标签,但不能看到内容.是的,如果我按照离子的示例应用程序选项卡我能够做到这一点.但我需要一个以上.
我们可以在这里展示内容.
我正在尝试在选项卡中的"我的图标"上添加徽章.目前的结果是:http://play.ionic.io/app/decfc14cb171
有谁知道如何把它们放在每个图标的右上角?
我试过用 但事实证明,在其他方面存在问题,尽管"徽章"属性更容易达到预期的效果.有没有办法在不使用离子标签的情况下复制它?
我在离子列表中有一个离子项.左对齐第一个文本和右对齐第二个文本的最佳方法是什么?
<div class="item">
<span>first</span>
<span>second</span>
</div>
Run Code Online (Sandbox Code Playgroud) 我刚刚更新了nodejs ionic和cordova.像以前一样创建新的离子项目:
ionic start myApp blank
Run Code Online (Sandbox Code Playgroud)
在终端中,转到myApp目录,然后输入:
ionic state
Run Code Online (Sandbox Code Playgroud)
我得到了消息:
您不能在非Ionic项目的项目上运行任何状态命令.尝试添加ionic.project文件或运行ionic start以获取要保存或还原的应用程序(CLI v1.7.10)
我的系统信息:
问题:哪里有ionic.project文件,我不记得以前在项目中有过这个文件.如何添加ionic.project文件?
我怎么发现这个问题?因为我从git检查源代码,所以我尝试使用ionic state restore命令恢复构建应用程序.但我得到了同样的信息,遗漏了ioinc.project.所以我创建了一个新的离子项目以找到原因,但我仍然感到困惑.
如果使用
ionic start
Run Code Online (Sandbox Code Playgroud)
你会得到的
无效命令(CLI v1.7.10)
当然,此命令没有directory参数.如果您将目录指定为./,则此命令仅创建并覆盖所有项目文件.
ionic ×10
angularjs ×4
cordova ×3
badge ×1
css ×1
devise ×1
google-maps ×1
html ×1
icons ×1
javascript ×1
livereload ×1
macos ×1
tabs ×1
toggle ×1