我目前正在写一个离子2(Angular 2)的简单形式.我想知道如何在验证中添加一个简单的正则表达式模式:
我基本上有这个:
<form>
<ion-input stacked-label>
<ion-label>{{label.msisdn}}</ion-label>
<input type="text"
[(ngModel)]="msisdn"
ngControl="msisdnForm"
required
maxlength="10"
minlength="10"
pattern="06([0-9]{8})"
#msisdnForm="ngForm"
>
</ion-input>
<button [disabled]="!msisdnForm.valid" block (click)="requestActivationCode()">
{{label.requestActivationCode}}
</button>
</form>
Run Code Online (Sandbox Code Playgroud)
拾取最大长度,最小长度和所需数量(如果不满足条件,则禁用该按钮).现在我想将输入限制为数字,并以06为前缀(荷兰电话号码,最小数量).
但是,在验证中未获取该模式.我可以这样做,还是需要代码方法?
我正在使用本机Ionic 2 Geolocation插件,它无法按预期工作.首先,我添加插件.
ionic plugin add cordova-plugin-geolocation
Run Code Online (Sandbox Code Playgroud)
然后我导入插件并发出调用以获取当前位置.
import { Geolocation } from 'ionic-native';
import { Geoposition, GeolocationOptions } from 'ionic-native/dist/plugins/geolocation';
export class MyComponent {
protected getLocation():Promise<Geoposition> {
let options:GeolocationOptions = {
maximumAge: 0, timeout: 5000, enableHighAccuracy: false
};
return Geolocation.getCurrentPosition(options)
.catch(error => { console.error(error.message) };
}
}
Run Code Online (Sandbox Code Playgroud)
我还检查了我的AndroidManifest.xml.
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Run Code Online (Sandbox Code Playgroud)
我注意到总是超时超时.如果我把它保留为默认值(默认情况下超时设置为无穷大),那么大约20分钟后,我确实得到了一个地理位置.当然,20分钟并不理想.
我也试过使用navigator如下.但我得到了完全相同的结果.
navigator.geolocation.getCurrentPosition(
position => {
console.info('using navigator');
console.info(position.coords.latitude);
console.info(position.coords.longitude);
},
error => {
console.warn('using navigator');
console.warn(error.code);
console.warn(error.message);
},
options
);
Run Code Online (Sandbox Code Playgroud)
测试时Chrome …
我试图以这种方式使用最近添加的LoadingController:
let loading=this.load.create({
content: "Connexion au serveur Migal en cours..."
});
loading.present();
this.http.get(this.urlCheckerForm.value.migalUrl+'/action/MobileApp/URLChecker')
.map(res => res.json())
.subscribe(
data => this.newConnection(data,loading),
error => this.catchURLError(loading));
loading.dismiss();
Run Code Online (Sandbox Code Playgroud)
基本上,我只是想在我的页面加载之前显示我的加载pop-in,然后将其关闭.
我按照Ionic 2文档中的示例进行操作,但它似乎根本不起作用......
编辑:加载组件甚至没有出现.
有没有办法在程序中检测ionic serveCLI正在运行(然后不在真实设备上)并将其用作条件.
我的问题:我有一个Cordova插件,可以回复Cordova的答案.
当我使用Ripple时,它提供选择将回调的值发送回JavaScript(以模拟插件结果).
我注意到Ionic2在浏览器中运行时没有这样做.因此,为了简化我的开发并使其能够在浏览器上进行测试(而不是经常构建到真实设备),我希望能够在ionic serveCLI运行时检入程序.换句话说:检查它是在真实设备还是常规浏览器上运行.
如果它在浏览器上运行,那么我会使用提示要求用户输入Cordova插件结果的虚拟值,而不是真正的Cordova插件.
我有一个小问题.
我正在使用这个HTML代码:
<ion-input id="amount" type="number" ></ion-input>
Run Code Online (Sandbox Code Playgroud)
<button (click)="setinput()">Set Value</button>
而这个TS代码:
setinput(){
var input= document.getElementById("amount") as HTMLInputElement;
input.value=42;
console.log("amount");
console.log(input.value);
}
Run Code Online (Sandbox Code Playgroud)
我的控制台告诉我,数字已经改变了.但更新后的值不会显示在我的输入字段中.你有什么建议吗?
提前致谢!
L. Trembon
我不明白为什么我的图标和闪屏没有显示.它们在config.xml文件中被正确引用,但它是显示的cordova默认图像.请帮忙
编辑:我刚刚注意到生成的图标和启动画面没有复制到各自的平台.为什么会这样?
我想表明4 ion-items我ion-list在一排.
由于我使用的是Bootstrap,我试图这样做:
<button class="col-sm-3" ion-item *ngFor="let player of players">
<ion-avatar item-left>
<img [src]="user.photoURL">
</ion-avatar>
{{ user.name }}
</button>
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
我正在使用离子2
我有问题发送多个项目到PayPalPayment我已经尝试过以下代码它没有项目工作正常,
let payment = new PayPalPayment('3.33', 'USD', 'Description', 'sale');
PayPal.renderSinglePaymentUI(payment).then(() => {
//response ...
});
Run Code Online (Sandbox Code Playgroud)
但是如果我把物品放进去的话,效果不好
let payment = new PayPalPayment('3.33', 'USD', 'Description', 'sale');
let items: PayPalItem[];
/**
cart = [
{
name: 'pen',
qty: 12,
price: '2.00'},
{
name: 'pencil',
qty: 2,
price: '1.00'
},
{
name: 'box',
qty: 1,
price: '20.00'
}
];
*/
cart.forEach(x => {
items.push(new PayPalItem(x.name, x.qty, x.price, "USD"));
});
payment.items = items;
PayPal.renderSinglePaymentUI(payment).then(() => {
//response ...
});
Run Code Online (Sandbox Code Playgroud) 我试图在ios上设置Segment组件的样式,就像我的一个ionic2项目中的Material Design上的Segment的默认样式一样.
任何人都可以帮助提供理想的方法吗?
当我尝试在笔记本电脑和Ionic的Pro仪表板上构建Android时出现此错误.
[04:27:55]: ? FAILURE: Build failed with an exception.
[04:27:55]: ? * What went wrong:
[04:27:55]: ? Execution failed for task ':app:transformClassesWithDesugarForRelease'.
[04:27:55]: ? > com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: Error while executing java process with main class com.google.devtools.build.android.desugar.Desugar with arguments {--input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/43.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/45.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/49.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/51.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/37.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/39.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/3.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/5.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/28.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/30.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/47.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/49.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/19.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/21.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/44.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/46.jar --classpath_entry /builds/user/anonymous-social/platforms/android/CordovaLib/build/intermediates/intermediate-jars/release/classes.jar --classpath_entry /builds/user/anonymous-social/platforms/android/app/build/intermediates/classes/release --classpath_entry /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/0.jar --classpath_entry /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/1.jar …Run Code Online (Sandbox Code Playgroud)