我在我的 flutter 项目上使用 Go Router,我注意到后退按钮不再显示。即使我专门添加它,我也会收到以下错误:
======== 手势捕获异常======================================== ========================= 处理手势时抛出以下 GoError: There is Nothing to pop 抛出异常时,这是堆栈: #0 GoRouterDelegate.pop (package:go_router/src/delegate.dart:120:5) #1 GoRouter.pop (package:go_router/src/router.dart:284:21) #2 RecordDetailState.build。(包:random_me/screens/record/detail.dart:70:36)#3 _InkResponseState.handleTap(包:flutter/src/material/ink_well.dart:1072:21)#4 GestureRecognizer.invokeCallback(包:flutter/src) /gestures/recognizer.dart:253:24) #5 TapGestureRecognizer.handleTapUp (包:flutter/src/gestures/tap.dart:627:11) #6 BaseTapGestureRecognizer._checkUp (包:flutter/src/gestures/tap.dart :306:5) #7 BaseTapGestureRecognizer.handlePrimaryPointer (包:flutter/src/gestures/tap.dart:239:7)
Widget build(BuildContext context) {
AppTranslations.init(context);
return Scaffold(
appBar: AppBar(
title: Text(TRANSLATION.record_detail),
leading: IconButton(
onPressed: () {
GoRouter.of(context).pop();
},
icon: Icon(Icons.arrow_back_ios),
//replace with our own icon data.
)),
Run Code Online (Sandbox Code Playgroud)
编辑:如果我打电话
GoRouter.of(context).push(CategoryDetail.routeName);
Run Code Online (Sandbox Code Playgroud)
代替
GoRouter.of(context).go(CategoryDetail.routeName);
Run Code Online (Sandbox Code Playgroud)
有用;
我试图做一个angularjs模态服务.我有一个控制器,打开一些模态,在该模态我称为原始控制器功能或访问一些变量,这部分我可以做到这一点.我只是无法关闭模态而不点击取消或确定按钮,o想要在模态中进行一些操作,手动调用一些werbservices和关闭模式.谁能帮我?
我在这里做了一个工作的plunker: plunker
var modalInstance = $modal.open({
templateUrl: 'myModalContent2.html',
controller: ModalInstanceCtrl,
size: size,
scope: $scope
});
Run Code Online (Sandbox Code Playgroud) 可以在同一个角度2模块上共享相同的css文件吗?
我知道我可以将View Encapsulation Emulated设置为继承的父组件css,但我希望在我的应用程序的一个特定模块中共享相同的样式.
这是我的app结构:
我安装了打开的图标插件,我想强制图标的大小在原始库中,有一个属性可以更改大小,但它似乎不适用于 Bootstrap 的版本。还有其他方法可以更改字体大小吗?
https://useiconic.com/icons/resize/
<div class="badge badge-primary badge-pill">
<span class="oi oi-thumb-down"></span>
</div>
Run Code Online (Sandbox Code Playgroud) css twitter-bootstrap twitter-bootstrap-3 iconic bootstrap-4
我在下面遇到此错误,但是我的Projecto上没有直接安装此软件包。还有其他人遇到相同的错误吗?该项目在我的本地环境中编译并正确运行,并且仅在将代码上传到heroku服务器时才出现此错误。昨天我在event-stream@3.3.6中遇到了相同的错误,但是我删除了node_modules文件夹,删除了package-lock.json并运行npm install,一切正常。
npm ERR!找不到404:flatmap-stream@0.1.1
{
"name": "myproj",
"version": "0.0.0",
"scripts": {
"ng": "ng",
"build": "ng build",
"start": "node server.js",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e",
"postinstall": "ng build --aot --prod"
},
"private": true,
"dependencies": {
"@agm/core": "^1.0.0-beta.5",
"@agm/js-marker-clusterer": "^1.0.0-beta.5",
"@agm/snazzy-info-window": "^1.0.0-beta.5",
"@angular/animations": "^6.1.0",
"@angular/cli": "^7.0.5",
"@angular/common": "^6.1.0",
"@angular/compiler": "^6.1.0",
"@angular/compiler-cli": "^6.1.0",
"@angular/core": "^6.1.0",
"@angular/elements": "^6.1.10",
"@angular/forms": "^6.1.0",
"@angular/http": "^6.1.0",
"@angular/platform-browser": "^6.1.0",
"@angular/platform-browser-dynamic": "^6.1.0",
"@angular/router": "^6.1.0",
"@asymmetrik/ngx-leaflet": "^4.0.0",
"@asymmetrik/ngx-leaflet-markercluster": "^1.0.0",
"@auth0/angular-jwt": "^2.0.0",
"@fortawesome/fontawesome-free": "^5.5.0",
"@hackages/ngxerrors": "^6.0.3",
"@ng-bootstrap/ng-bootstrap": "^3.3.1", …Run Code Online (Sandbox Code Playgroud) 我试图在地图上方放置一个 div ,以放置一些操作,例如过滤器和其他内容,但该 div 仅在我移动地图时出现,并且它位于地图后面。
组件CSS:
.map {
padding: 0;
position:relative;
width:100% ;
height: 100%;
}
.mapContainer{
width: 100vw;
height: 92.6vh; /* Fallback for browsers that do not support Custom Properties */
height: calc(var(--vh, 1vh) * 92.6);
padding: 0 ;
}
.overlay {
width: 100px;
position: absolute;
top: 0;
left: 0;
bottom: 0;
background-color: rgba(255, 50, 50, 0.5);
}
Run Code Online (Sandbox Code Playgroud)
组件 html :
<div class="container-fluid" >
<div class="row">
<div class="col-sm-2">
<div *ngIf="city">
<p>{{city.name}} </p>
</div>
</div>
<div class="col-sm-10 mapContainer" >
<div …Run Code Online (Sandbox Code Playgroud) 我正在尝试在新标签页而不是当前页面上打开routerlink,但是常规html属性(例如target _blank)无法正常工作。
<span routerLink="/custompage/{{city.id}}" class="badge badge-primary badge-pill">open</span>
Run Code Online (Sandbox Code Playgroud) 我有一个带有angularjs路由的应用程序,但在某些视图上我想滚动到一些特定的div我使用anchorScroll但有时(并非所有时间)它刷新所有页面甚至我停止事件传播.有人有这个问题吗?
$scope.redirectTodiv = function(divname,event) {
event.stopPropagation();
event.preventDefault();
$location.hash(divname);
$anchorScroll();
};
Run Code Online (Sandbox Code Playgroud) 有没有其他方法可以在运行时更改 ngx-leaflet 地图坐标?这可以通过谷歌地图实现,我正在尝试对传单做同样的事情。
最初设置后,对 leafletOptions 的更改将被忽略。这是因为这些选项被传递到地图构造函数中,因此无论如何都无法更改它们。因此,在创建地图之前请确保该对象存在。您需要在 ngOnInit 中创建对象或使用 *ngIf 隐藏地图 DOM 元素,直到您可以创建选项对象。
成分:
private options = {
layers: [
tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
attribution: '© OpenStreetMap contributors'
})
],
zoom: 7,
center: latLng([ 46.879966, -121.726909 ])
};
Run Code Online (Sandbox Code Playgroud)
html:
<div style="height: 500px;"
leaflet
[leafletOptions]="(options)"
></div>
Run Code Online (Sandbox Code Playgroud) 我的组件上有这个代码
this.authService.login4(this.email, this.password)
.pipe(first())
.subscribe(
data => {
console.log(data);
},
error => {
console.log('err');
});
Run Code Online (Sandbox Code Playgroud)
我的服务上的这个实现:
login4(email: string, password: string): Observable<any> {
return this.http.post('http://localhost:3000/api' + '/login', {
email: email,
password: password
});
}
Run Code Online (Sandbox Code Playgroud)
并且在出现错误时会打印 err,但是如果我将 login 的实现更改为此,则不会打印组件 err。这是正常的吗?我想知道组件中是否有任何错误。
login4(email: string, password: string): Observable<any> {
return this.http.post('http://localhost:3000/api' + '/login', {
email: email,
password: password
}).pipe(
tap(data => console.log(data)),
catchError(this.handleError<any>(`err`))
);
}
Run Code Online (Sandbox Code Playgroud) 我正在使用sequelize来访问一个postgres数据库,并且我想查询一个城市,例如包括“ Building”表,但是我想将输出重命名为“ buildings”并返回http响应,但是我遇到了这个错误:
{SequelizeEagerLoadingError:建筑使用别名与城市相关联。您已包括一个别名(建筑物),但与您的关联中定义的别名不匹配。
City.findById(req.params.id,{
include: [
{
model: Building, as: "buildings"
}
]
}).then(city =>{
console.log(city.id);
res.status(201).send(city);
}) .catch(error => {
console.log(error);
res.status(400).send(error)
});
Run Code Online (Sandbox Code Playgroud)
城市模型
const models = require('../models2');
module.exports = (sequelize, DataTypes) => {
const City = sequelize.define('city', {
name: { type: DataTypes.STRING, allowNull: false },
status: { type: DataTypes.INTEGER, allowNull: false },
latitude: { type: DataTypes.BIGINT, allowNull: false },
longitude: { type: DataTypes.BIGINT, allowNull: false },
}, { freezeTableName: true});
City.associate = function(models) {
// associations can …Run Code Online (Sandbox Code Playgroud) postgresql node.js sequelize.js sequelize-cli sequelize-typescript
我正在使用反应式表单,并且我有一个来自对象数组的选择框。我试图设置默认值,但它只是没有设置。
我的表格:
<form [formGroup]="markerForm" (ngSubmit)="onSubmit(markerForm)" novalidate>
<div class="form-group">
<label for="markerType">{{ 'MARKER.LABEL_TYPE' | translate }}</label>
<select class="form-control" formControlName="markerType" >
<option id="markerType" [value]="markerType.id" *ngFor="let markerType of markerTypes">{{markerType.desc}}</option>
</select>
</div>
</form>
Run Code Online (Sandbox Code Playgroud)
设置默认值:
const test= [{id:1, desc: 'Restaurants'}, {id:2, desc : 'Fire stations'}];
this.markerTypes= test;
console.log(this.markerTypes[1].desc);
this.markerForm.controls['markerType'].setValue( this.markerTypes[1], {onlySelf: true});
Run Code Online (Sandbox Code Playgroud) angular ×7
angularjs ×2
bootstrap-4 ×2
leaflet ×2
typescript ×2
css ×1
flutter ×1
flutter-web ×1
heroku ×1
iconic ×1
javascript ×1
maps ×1
ngx-leaflet ×1
node.js ×1
npm ×1
npm-install ×1
postgresql ×1
rxjs ×1
sequelize.js ×1