每当我使用离子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参数.如果您将目录指定为./,则此命令仅创建并覆盖所有项目文件.
在构建和运行离子应用程序时,我遇到了一个非常奇怪的问题.我从服务器调用Login API,它在浏览器中运行得非常好
$ionic serve --lab
Run Code Online (Sandbox Code Playgroud)
但是当Android安装应用程序时,它会给出403错误,并且不会提供有关错误代码的任何其他信息,可能,我不知道如何在Android混合应用程序中获取浏览器控制台日志.
我有登录功能如下
login: function(user) {
var deferred = $q.defer();
$http.post(SERVER_URL + '/auth/login', {
username: user.username,
password: user.password
}).success(function(response, status, headers, config) {
if (response.data && response.data[0]) {
Auth.setToken(response.data[0].token);
Auth.setUserId(response.data[0].id);
deferred.resolve(response);
} else {
deferred.reject(response);
}
}).error(function(response, status, headers, config) {
deferred.reject(response);
});
return deferred.promise;
}
Run Code Online (Sandbox Code Playgroud)
但是,所有get请求都能正常工作.
当后退按钮显示时,我尝试使菜单按钮不显示.有没有办法让Ionic照顾它?还是由我决定?
例如,如果我使用ui-sref从app.users转到app.users.add或app.users.details我希望隐藏菜单按钮并显示后退按钮,但是当我走的时候它们都会显示嵌套视图.例:
<button class="button button-positive" ui-sref="app.users.details({id:user.id})"> User details </button>
Run Code Online (Sandbox Code Playgroud)
app.js
.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
.state('app', {
url: '/app',
abstract: true,
templateUrl: 'templates/menu.html'
//controller: 'AppCtrl'
})
.state('app.users', {
url: '/users',
views: {
'menuContent@app' : {
controller: 'UsersCtrl',
templateUrl: 'templates/users.html'
}
}
})
.state('app.users.add', {
url: '/addUsers',
views: {
'menuContent@app' : {
controller: 'AddUserCtrl',
templateUrl: 'templates/add_user.html'
}
}
})
.state('app.users.details', {
url: '/userDetails/:id',
views: {
'menuContent@app' : {
controller: 'UserDetailsCtrl',
templateUrl: 'templates/details_user.html'
}
}
})
}
Run Code Online (Sandbox Code Playgroud)
menu.html
<ion-side-menus>
<ion-pane ion-side-menu-content>
<ion-nav-bar class="bar-stable"> …Run Code Online (Sandbox Code Playgroud) 上周一切顺利,当我在设备上运行应用程序或使用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请求.
有人经历过类似的事吗?我对此感到非常头疼.
ionic ×10
cordova ×4
angularjs ×3
back-button ×1
badge ×1
css ×1
icons ×1
livereload ×1
macos ×1
menu ×1
navigation ×1
tabs ×1