我正在使用角度6,并且有一个打开对话框的按钮。在对话框中,我有一个获取用户数据的表单,然后有两个按钮可以提交和取消。我试图在控制台中显示表单的数据,但是它返回未定义的!有什么问题?这是代码的一部分:
main.component.ts:
import { Work } from '../../../../classes/work_shift';
import { DialogContentComponent} from './dialog-content/dialog-content.component';
export class WorkShiftsComponent implements OnInit {
shifts: Work[];
name: string;
start: string;
end: string;
constructor(public dialog: MatDialog, private shiftService: WorkShiftsService) { }
ngOnInit() {
}
openDialog() {
const dialogRef = this.dialog.open(DialogContentComponent, {
width: '640px',
disableClose: true,
data: {name: this.name, start: this.start, end: this.end}
});
dialogRef.afterClosed().subscribe(result => {
console.log('The dialog was closed');
console.log(result);//returns undefined
});
}
}
Run Code Online (Sandbox Code Playgroud)
dialogContent.component.html:
<mat-dialog-content>
<form class="example-form">
<div fxLayout="column" fxLayoutAlign="space-around" class="form">
<div class="input">
<mat-form-field …Run Code Online (Sandbox Code Playgroud) 我正在使用 angular 4 和 quill 编辑器。但我得到一个错误quill Invalid Quill container。我更改了容器的名称,但它仍然返回错误并且无法识别容器 ID。我在 ngOninit 中创建了我的羽毛笔对象,但它不起作用!这些是我的代码:
import * as Quill from 'quill';
quill;
this.quill = new Quill('#editor-container', {
modules: {
toolbar: { container: '#toolbar-toolbar' }
},
theme: 'snow'
});
Run Code Online (Sandbox Code Playgroud)
这是 HTML 文件:
<md-card>
<div class="toolbar border-none" id="toolbar-toolbar">
<span class="ql-formats">
<select class="ql-size">
<option value="small"></option>
<option selected=""></option>
<option value="large"></option>
<option value="huge"></option>
</select>
</span>
<span class="ql-formats">
<button class="ql-bold"></button>
<button class="ql-italic"></button>
<button class="ql-underline"></button>
<button class="ql-strike"></button>
</span>
<span class="ql-formats">
<select class="ql-color"></select>
<select class="ql-background"></select>
</span>
<span class="ql-formats">
<button …Run Code Online (Sandbox Code Playgroud) 我有一个angular 4应用程序,我想在ubuntu上运行它。我将所有项目文件,package.json和package-lock.json复制到winscp中的文件夹,但没有复制node_modules!现在,当我运行npm install时,出现如下错误:
> node-sass@4.7.2 install /home/ubuntu/cms/node_modules/@angular/cli/node_modules/node-sass
> node scripts/install.js
Unable to save binary /home/ubuntu/cms/node_modules/@angular/cli/node_modules/node-sass/vendor/linux-x64-57 : { Error: EACCES: permission denied, mkdir '/home/ubuntu/cms/node_modules/@angular/cli/node_modules/node-sass/vendor'
at Object.fs.mkdirSync (fs.js:885:18)
at sync (/home/ubuntu/cms/node_modules/mkdirp/index.js:71:13)
at Function.sync (/home/ubuntu/cms/node_modules/mkdirp/index.js:77:24)
at checkAndDownloadBinary (/home/ubuntu/cms/node_modules/@angular/cli/node_modules/node-sass/scripts/install.js:111:11)
at Object.<anonymous> (/home/ubuntu/cms/node_modules/@angular/cli/node_modules/node-sass/scripts/install.js:154:1)
at Module._compile (module.js:643:30)
at Object.Module._extensions..js (module.js:654:10)
at Module.load (module.js:556:32)
at tryModuleLoad (module.js:499:12)
at Function.Module._load (module.js:491:3)
errno: -13,
code: 'EACCES',
syscall: 'mkdir',
path: '/home/ubuntu/cms/node_modules/@angular/cli/node_modules/node-sass/vendor' }
> node-sass@4.9.1 install /home/ubuntu/cms/node_modules/node-sass
> node scripts/install.js
Unable to save binary /home/ubuntu/cms/node_modules/node-sass/vendor/linux-x64-57 : { Error: EACCES: permission denied, …Run Code Online (Sandbox Code Playgroud) 我正在使用角度4,我有一个问题.当我运行项目并使用ng serve时,我的项目中的哪个文件首先呈现?还有像这么多的文件main.ts,angular-cli.json,app.module我不知道什么时候我跑纳克担任下去.
我正在使用有角4形式,我有一些领域。和first_name,last_name和company对我来说真的很重要。我想强迫用户填写这三个字段之一。我该怎么做?
这是.ts代码:
this.contactForm = this.fb.group({
first_name: [null, Validators.compose([Validators.required])],
last_name: [null, Validators.compose([Validators.required])],
email: [null, Validators.compose([this.validateEmail])],
company: [null],
position: [null],
});
Run Code Online (Sandbox Code Playgroud)
一个html:
<form [formGroup]="contactForm" fxLayout="column">
<md-input-container class="data_light">
<input class="data_font capital" mdInput placeholder="{{'Contacts.FirstName' | translate}}" [formControl]="contactForm.controls['first_name']">
</md-input-container>
<small *ngIf="contactForm.controls['first_name'].hasError('required') && contactForm.controls['first_name'].touched" class="mat-text-warn data_light">{{'Contacts.firstNameReq' | translate}}
</small>
<md-input-container class="data_light">
<input class="data_font capital" mdInput placeholder="{{'Contacts.lastName' | translate}}" [formControl]="contactForm.controls['last_name']">
</md-input-container>
<small *ngIf="contactForm.controls['last_name'].hasError('required') && contactForm.controls['last_name'].touched" class="mat-text-warn data_light">{{'Contacts.lastNameReq' | translate}}
</small>
<md-input-container class="data_light">
<input class="data_font" mdInput placeholder="{{'Contacts.email' | translate}}" [formControl]="contactForm.controls['email']"
(blur)="checkContactEmail()">
</md-input-container>
<small *ngIf="contactForm.controls['email'].hasError('validateEmail') && contactForm.controls['email'].dirty" class="mat-text-warn data_light">{{'Contacts.emailValid' …Run Code Online (Sandbox Code Playgroud) 我使用的是 Angular 5 材质,并且有一个包含菜单和子菜单数据的 JSON 对象。我该怎么办?我可以使用 type= link 或 sub 显示项目,但我不知道如何向孩子们显示。我想在单击父项时显示子项。我用mat-nav-list和mat-list-item向他们展示,但我不知道如何向孩子们展示。
这是对象:
import { Injectable } from '@angular/core';
export interface ChildrenItems {
state: string;
name: string;
type?: string;
}
export interface Menu {
state: string;
name: string;
type: string;
icon: string;
children?: ChildrenItems[];
}
const MENUITEMS = [
{
state: 'dashboard',
name: 'Dashboard',
type: 'link',
icon: 'dashboard'
},
{
state: 'setting',
name: 'Settings',
type: 'sub',
icon: 'settings',
children: [
{
state: 'station_management',
name: 'Station Management',
type: …Run Code Online (Sandbox Code Playgroud) 我正在使用PostgreSQL,我有一个表,我保留了我的用户,而在另一个表中,我保留了包含id和group名称的用户组.在用户的表中,我有一个列,我将每个用户的组ID保存在一个数组中.现在我想获取用户的所有数据以及每个用户的组名.我该怎么办?这是一个例子:用户表:
user_id name roles
1 bob [1, 2]
2 jack [3]
Run Code Online (Sandbox Code Playgroud)
角色表:
role_id name
1 ceo
2 cto
3 financial
Run Code Online (Sandbox Code Playgroud)
我希望有:
user_id name role_name
1 bob CEO, cto
2 jack financial
Run Code Online (Sandbox Code Playgroud) 我正在使用角度5,并且有一个mat-progress-bar。我还有一个2 * 60的计时器,表示2分钟。我想每秒减少进度栏的值,两分钟后,栏的值变为0!我该怎么做?
javascript setinterval progress-bar angular-material angular5
我的 angular 6 应用程序中有一个 d3 柱状图,我想在 y 轴上为 y 轴上的每个标签绘制线条。我希望线条是这样的:
我不知道怎么画那些浅灰色的线!
这是我来自 d3 的代码:
createChart() {
const element = this.chartContainer.nativeElement;
this.width = element.offsetWidth - this.margin.left - this.margin.right;
this.height = element.offsetHeight - this.margin.top - this.margin.bottom;
const svg = d3.select(element).append('svg')
.attr('width', element.offsetWidth)
.attr('height', element.offsetHeight);
// chart plot area
this.chart = svg.append('g')
.attr('class', 'bars')
.attr('transform', `translate(${this.margin.left}, ${this.margin.top})`);
// define X & Y domains
const xDomain = this.data.map(d => d[0]);
const yDomain = [10000, d3.max(this.data, d => d[1])];
// create scales
this.xScale = d3.scaleBand().padding(0.6).domain(xDomain).rangeRound([0, …Run Code Online (Sandbox Code Playgroud) angular ×5
javascript ×3
typescript ×3
angular-cli ×2
angular5 ×2
angular6 ×2
arrays ×1
containers ×1
d3.js ×1
editor ×1
line ×1
list ×1
node-sass ×1
node.js ×1
npm ×1
package.json ×1
postgresql ×1
progress-bar ×1
quill ×1
required ×1
select ×1
setinterval ×1
sql ×1