<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Phoenix_99的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Phoenix_99</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Phoenix_99]]></copyright><item><title><![CDATA[angular-materials table中动态增加行和删除列]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/126912894</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/126912894</guid><author>Phoenix_99</author><pubDate>Sun, 18 Sep 2022 00:22:16 +0800</pubDate><description><![CDATA[angular html]]></description><category></category></item><item><title><![CDATA[响应式表单动态增加字段后的validator]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/126811424</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/126811424</guid><author>Phoenix_99</author><pubDate>Mon, 12 Sep 2022 00:07:36 +0800</pubDate><description><![CDATA[anguar 响应式表单 动态增加字段 验证]]></description><category></category></item><item><title><![CDATA[Angular实现日期，数据和更新]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/126682386</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/126682386</guid><author>Phoenix_99</author><pubDate>Sat, 03 Sep 2022 21:00:54 +0800</pubDate><description><![CDATA[angular 日历]]></description><category></category></item><item><title><![CDATA[重新整理angular+springBoot+mybatis所遇到的问题]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109588493</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109588493</guid><author>Phoenix_99</author><pubDate>Fri, 12 Aug 2022 20:37:35 +0800</pubDate><description><![CDATA[2.异常：Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception。4.angular 不识别https路径 403 (Forbidden)1.error:java: 无效的目标发行版: 18。在index.html中增加下记语句。解决方法：把执行文件放到最外层。1)angular部分。2)springboot部分。...]]></description><category></category></item><item><title><![CDATA[css 带有向下箭头的div]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/120722102</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/120722102</guid><author>Phoenix_99</author><pubDate>Tue, 12 Oct 2021 14:05:48 +0800</pubDate><description><![CDATA[&lt;body&gt;
&lt;div class="border-triangle-bottom"&gt;&lt;/div&gt;

&lt;script src="http://code.jquery.com/jquery-latest.js"&gt;&lt;/script&gt;
  &lt;style type="text/css"&gt;
  .border-triangle-bottom {
    width: 100px;
    height: 30px...]]></description><category></category></item><item><title><![CDATA[springboot_mybatis_pageHelper所遇到的问题点]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/111663122</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/111663122</guid><author>Phoenix_99</author><pubDate>Fri, 25 Dec 2020 10:46:50 +0800</pubDate><description><![CDATA[1，Result Maps用错，应该用resultType


2020-12-25 11:32:12.796 ERROR 5576 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet]  : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested..]]></description><category></category></item><item><title><![CDATA[springboot关联mybatis遇到的问题]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/111244841</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/111244841</guid><author>Phoenix_99</author><pubDate>Wed, 16 Dec 2020 08:40:29 +0800</pubDate><description><![CDATA[1，No MyBatis mapper was found in '[xx.xx]' package. Please check your configuration

解决问题：

@MapperScan(value = "com.yjg.honest.mybatis.mapper") //忘记加入mapperScan扫描了
@SpringBootApplication
public class HonestApplication {

 public static void main(String[..]]></description><category></category></item><item><title><![CDATA[angular下页面不显示问题]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/110948624</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/110948624</guid><author>Phoenix_99</author><pubDate>Thu, 10 Dec 2020 11:01:25 +0800</pubDate><description><![CDATA[1，在service中实例化HttpClient后，界面显示空白，原因在app.modules中没有引入相应的模块


import { Injectable } from '@angular/core';
import {HttpClient} from '@angular/common/http';

@Injectable({
  providedIn: 'root'
})
export class UserService {

  constructor(private httpClient: Ht]]></description><category></category></item><item><title><![CDATA[多对一  多对多]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109588506</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109588506</guid><author>Phoenix_99</author><pubDate>Mon, 09 Nov 2020 23:00:17 +0800</pubDate><description><![CDATA[public class T_user {
    private Integer id;
    private String username;
    private String telephone;
    private Date birthday;
    private List&lt;T_account&gt; t_account;
---set get方法----
}


public class T_account implements Serializable {
    priv.]]></description><category></category></item><item><title><![CDATA[mybatis表关联（一对一）]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109580926</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109580926</guid><author>Phoenix_99</author><pubDate>Mon, 09 Nov 2020 16:52:11 +0800</pubDate><description><![CDATA[建表 t_account


SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for t_account
-- ----------------------------
DROP TABLE IF EXISTS `t_account`;
CREATE TABLE `t_account` (
 `ID` int NOT NULL COMMENT '编号',
 `UID` int DEFAULT NU..]]></description><category></category></item><item><title><![CDATA[web socket通讯]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109112414</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109112414</guid><author>Phoenix_99</author><pubDate>Fri, 16 Oct 2020 16:56:01 +0800</pubDate><description><![CDATA[1、安装web socket依赖库

D:\angular\client&gt;npm install ws --save


2.安装web socket的类型定义文件

D:\angular\client&gt;npm i @types/ws --save-dev

服务器端

auction_server.TS

客户端，建立服务

D:\angular\client&gt;D:\angular\client&gt;ng g s shared/websocket


import * as expr.]]></description><category></category></item><item><title><![CDATA[HTTP请求服务器数据（管道方式）]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109111325</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109111325</guid><author>Phoenix_99</author><pubDate>Fri, 16 Oct 2020 10:19:22 +0800</pubDate><description><![CDATA[product TS


import { Component, OnInit } from '@angular/core';
import {Observable, Subscription} from 'rxjs';
import {HttpClient} from '@angular/common/http';

@Component({
  selector: 'app-product',
  templateUrl: './product.component.html',
  styleUrls:]]></description><category></category></item><item><title><![CDATA[HTTP 请求服务端数据]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109110591</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109110591</guid><author>Phoenix_99</author><pubDate>Fri, 16 Oct 2020 09:59:14 +0800</pubDate><description><![CDATA[client端

1、引入HttpClientModule模板


import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { Produc]]></description><category></category></item><item><title><![CDATA[在WebStorm 2020.2上创建typescript服务]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109094790</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109094790</guid><author>Phoenix_99</author><pubDate>Thu, 15 Oct 2020 13:38:56 +0800</pubDate><description><![CDATA[一、在硬盘新建文件夹

例如：D:\angular\server

二，通过webstorm打开该文件夹

三、初始化该文件夹，通过下记命令，生产package.json文件



四、要用typescript，需引入node的定义文件

D:\angular\server&gt;npm i @types/node --save




五、通过配置文件，把typescript编译成javascript

新建tsconfig.json


{
  "compileOnSave": true,
  "co.]]></description><category></category></item><item><title><![CDATA[模板式表单验证]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109077518</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109077518</guid><author>Phoenix_99</author><pubDate>Wed, 14 Oct 2020 16:35:00 +0800</pubDate><description><![CDATA[HTML


&lt;form #myForm="ngForm" (ngSubmit)="onSubmit(myForm.value, myForm.valid)" novalidate&gt;
  &lt;div&gt;用户名:&lt;input type="text" ngModel required minlength="6" name="username"&gt;&lt;/div&gt;
  &lt;div [hidden]="!myForm.form.hasError('required','us]]></description><category></category></item><item><title><![CDATA[响应式表单验证]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109071557</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109071557</guid><author>Phoenix_99</author><pubDate>Wed, 14 Oct 2020 13:42:18 +0800</pubDate><description><![CDATA[reactiveRegist.css


.ng-invalid {
  border: 1px solid red;
}
.hasErr {
  border: 1px solid red;
}

reactiveRegist HTML


&lt;form [formGroup]="formModel" (submit)="onSubmit()"&gt;
  &lt;div&gt;用户名:&lt;input [class.hasErr]="formModel.get('username').invali]]></description><category></category></item><item><title><![CDATA[响应式表单]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109049893</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109049893</guid><author>Phoenix_99</author><pubDate>Tue, 13 Oct 2020 14:10:05 +0800</pubDate><description><![CDATA[reactiveform HTM:L


&lt;form [formGroup]="formModel" (submit)="onSubmit()"&gt;
  &lt;div&gt;
    &lt;input formControlName="username" type="text"&gt;
  &lt;/div&gt;
  &lt;div formGroupName="dateRange"&gt;
    起始日期：&lt;label&gt;
    &lt;input type="date" f]]></description><category></category></item><item><title><![CDATA[模板式表单]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109045785</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109045785</guid><author>Phoenix_99</author><pubDate>Tue, 13 Oct 2020 10:16:06 +0800</pubDate><description><![CDATA[app HTML


&lt;app-templateform&gt;&lt;/app-templateform&gt;

templateForm HTML


&lt;form #myForm = "ngForm" (ngSubmit)="onSubmit(myForm.value)" &gt;
  &lt;div ngModelGroup="userInfo"&gt;
    &lt;div&gt;用户名:&lt;input type="text" #username="ngModel" ngMode]]></description><category></category></item><item><title><![CDATA[AfterContentInit, AfterContentChecked, OnDestroy钩子]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109020713</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109020713</guid><author>Phoenix_99</author><pubDate>Mon, 12 Oct 2020 08:26:07 +0800</pubDate><description><![CDATA[app-routing TS


import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import {NextlinkComponent} from './nextlink/nextlink.component';
import {ChildComponent} from './child/child.component';

const routes: Route]]></description><category></category></item><item><title><![CDATA[投影到子组件]]></title><link>https://blog.youkuaiyun.com/Phoenix_99/article/details/109020559</link><guid>https://blog.youkuaiyun.com/Phoenix_99/article/details/109020559</guid><author>Phoenix_99</author><pubDate>Mon, 12 Oct 2020 07:46:57 +0800</pubDate><description><![CDATA[app HTML


&lt;div class="wrapper"&gt;
  &lt;h2&gt;我是父组件&lt;/h2&gt;
  &lt;div&gt;这个div定义在父组件中&lt;/div&gt;
  &lt;app-child&gt;
    &lt;div class="header"&gt;这个div是父组件投影到子组件的1, {{title}}&lt;/div&gt;
    &lt;div class="footer"&gt;这个div是父组件投影到子组件的2&lt;/div&gt;]]></description><category></category></item></channel></rss>