自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

时光隧道

qq:2528877987,微信:13960699696

  • 博客(169)
  • 收藏
  • 关注

原创 (精华)2020年7月31日 Typescript 基本配置

生成typescript配置文件tsconfig.jsontsc inittsconfig.json{ "compilerOptions": { /* Basic Options */ // "incremental": true, /* Enable incremental compilation */ "target": "es5", /* Specify ECMAScript ta

2020-07-31 23:59:09 496955 1

原创 (精华)2020年7月31日 React 手写ssr服务端渲染

共用部分import React ,{useState} from 'react'import {connect} from 'react-redux'import {getIndexList} from '../store/index'const Index = (props) => { let [count,setCount] = useState(1) return ( <div> <h1>服务端渲染<

2020-07-31 23:37:33 497314 1

原创 (精华)2020年7月31日 React 虚拟dom的渲染机制和性能调优

//-------------------------1----------------------------- function Table ({rows}) { return ( <table> { rows.map(row=>( <tr> <t

2020-07-31 00:37:07 499707 1

原创 (精华)2020年7月31日 React setstate原理详解

// partialState 部分stateReactComponent.prototype.setState = function (partialState, callback) { invariant( typeof partialState === 'object' || typeof partialState === 'function' || partialState == null, 'setState(...): takes an object of.

2020-07-31 00:19:44 499626 1

原创 (精华)2020年7月30日 微信小程序 内置插件的使用

loginAndGetUserInfo 用户信息功能页requestPayment 支付功能页chooseAddress 收获地址功能页<!-- sample.wxml --><functional-page-navigator name="loginAndGetUserInfo" bind:success="loginSuccess"> <button>登录到插件</button></functional-page-navigator.

2020-07-30 11:33:08 504539

原创 (精华)2020年7月30日 微信小程序 选择器的使用

picker 从底部弹起的滚动选择器<view class="section"> <view class="section__title">普通选择器</view> <picker bindchange="bindPickerChange" value="{{index}}" range="{{array}}"> <view class="picker"> 当前选择:{{array[index]}} </

2020-07-30 11:27:02 504409

原创 (精华)2020年7月30日 微信小程序 富文本编辑器的使用

<view class="container" style="height:{{editorHeight}}px;"> <editor id="editor" class="ql-container" placeholder="{{placeholder}}" bindstatuschange="onStatusChange" bindready="onEditorReady"> </editor></view><scroll-view s

2020-07-30 11:23:37 504620

原创 (精华)2020年7月30日 微信小程序 富文本和文本的使用

const htmlSnip =`<div class="div_class"> <h1>Title</h1> <p class="p"> Life is&nbsp;<i>like</i>&nbsp;a box of <b>&nbsp;chocolates</b>. </p></div>`const nodeSnip =`Pa

2020-07-30 11:13:19 504563

原创 (精华)2020年7月30日 微信小程序 进度条的使用

<view class="progress-box"> <progress percent="20" show-info stroke-width="3"/></view><view class="progress-box"> <progress percent="40" active stroke-width="3" /> <icon class="progress-cancel" type="cancel">&lt

2020-07-30 11:12:03 504520

原创 (精华)2020年7月30日 微信小程序 自带图标和外部图标的使用

自带图标<view class="container"> <view class="icon-box"> <icon class="icon-box-img" type="success" size="93"></icon> <view class="icon-box-ctn"> <view class="icon-box-title">成功</view> <view cl

2020-07-30 11:09:12 504581

原创 (精华)2020年7月30日 微信小程序 视图容器

覆盖在原生组件之上的图片视图。可覆盖的原生组件同cover-view,支持嵌套在cover-view里。<cover-image src="图标路径,支持临时路径、网络地址、云文件ID" bindload="图片加载成功时触发" binderror="图片加载失败时触发">覆盖在原生组件之上的文本视图可覆盖的原生组件包括 map、video、canvas、camera、live-player、live-pusher<cover-view class="cover-view"&g

2020-07-30 11:02:33 504386

原创 (精华)2020年7月30日 微信小程序 模块的使用

WXS 模块tools.wxsvar foo = "'hello world' from comm.wxs";var bar = function(d) { return d;}module.exports = { foo: foo, bar: bar};module.exports.msg = "some msg";logic.wxsvar tools = require("./tools.wxs");console.log(tools.FOO);console.lo

2020-07-30 10:44:55 504390

原创 (精华)2020年7月29日 React react-hooks的useReducer的使用

import React , {useReducer} from 'react'// (state,action)=>newStateconst UseReducer = ()=>{ const reducer = (state,action) =>{ if(action.type === 'add'){ return { ...state, count:state.coun

2020-07-29 00:02:03 506318

原创 (精华)2020年7月29日 React react-hooks的useEffect的使用

import React , {useEffect,useState} from 'react'const UseEffect = ()=>{ const [loading,setLoading] = useState(true) useEffect(()=>{ setTimeout(()=>{ setLoading(false) },2000) }) return ( loadin

2020-07-29 00:01:19 506389

原创 (精华)2020年7月28日 React react-hooks的useContext用法

import React , {useState} from 'react'const addCon = ()=>{ console.log(useState(0)); const [count,setCount] = useState(0) const handelAdd = () =>{ let newCount = count; setCount(newCount+=1) } return (

2020-07-28 23:49:41 506633 2

原创 (精华)2020年7月28日 React react-hooks的useState用法

import React , {useState} from 'react'const addCon = ()=>{ console.log(useState(0)); const [count,setCount] = useState(0) const handelAdd = () =>{ let newCount = count; setCount(newCount+=1) } return (

2020-07-28 23:48:54 506473 3

原创 (精华)2020年7月28日 React redux的使用

action-type.jsexport const INCREMENT = 'increment'export const DECREMENT = 'decrement'actions.jsimport {INCREMENT,DECREMENT} from './action-type'export const increment = number => ({type:INCREMENT,number})export const decrement = number => ({t

2020-07-28 23:24:45 506414 1

原创 (精华)2020年7月31日 React 非父子组件传参

新版:跨级传参最主要是避免每层赋值,也避免用到dvaimport React from 'react'const {Provider,Consumer} = React.createContext('default')export default class ContextDemo extends React.Component { state={ newContext:'createContext' } render() { const {newCon

2020-07-26 23:12:06 510522 1

原创 (精华)2020年7月26日 React ref的三种方式

import React from 'react'export default class RefDemo extends React.Component { constructor() { super() this.objRef = React.createRef()//第一种 // { current: null } } componentDidMount() { // console.log(`span1: ${this.refs.ref1.text

2020-07-26 23:06:54 510317 1

原创 (精华)2020年7月26日 React react-router-dom的基本使用

import React from 'react';import ReactDOM from 'react-dom';import './index.css';import App from './App';import * as serviceWorker from './serviceWorker';import {HashRouter,BrowserRouter} from 'react-router-dom'ReactDOM.render( <BrowserRouter&

2020-07-26 23:03:56 510773 1

原创 (精华)2020年7月26日 React pwa的配置

在到webpack配置文件中添加插件const WorkboxWebpackPlugin = require('workbox-webpack-plugin')plugins: [ new MiniCssExtractPlugin({ filename: '[name].css' }), new WorkboxWebpackPlugin.GenerateSW({ clientsClaim:true,

2020-07-26 22:48:42 510418

原创 (精华)2020年7月26日 React 组件的生命周期

import React from 'react';import logo from './logo.svg';import './App.css';class App extends React.Component{ constructor(props){ super(props) this.state = { msg:'第一次的消息' } } componentWillMount(){ console.log(this.state.msg);

2020-07-26 22:45:54 510470

原创 (精华)2020年7月26日 React Todolist的实现

app.jsimport React from 'react'import TodoMain from './components/TodoMain';import TodoHeader from './components/TodoHeader';import TodoFooter from './components/TodoFooter';class App extends React.Component{ constructor(props){ super(props)

2020-07-26 19:54:35 510309

原创 (精华)2020年7月26日 React 父组件和子组件相互传值

html原型<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>简单组件</title></head><body> <div id

2020-07-26 10:37:34 510392

原创 (精华)2020年7月26日 React this的指向问题

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>this</title></head><body> <div id="app

2020-07-26 10:31:52 510301

原创 (精华)2020年7月26日 React 组件的使用

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>简单组件</title></head><body> <div id="app

2020-07-26 10:22:17 510367

原创 (精华)2020年7月26日 React html中使用react

基本使用<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>hello</title></head><body> <div i

2020-07-26 10:13:41 510469

原创 (精华)2020年7月23日 C#基础知识点 表达式目录数实现组合继承(EF动态查询)

//定义数据模型类public class Base_UserTestDTO : Base_User{ public string DepartmentName { get; set; }}//即BaseBusiness中的Servicevar db = DbFactory.GetRepository();Expression<Func<Base_User, Base_Department, Base_UserTestDTO>> select = (a, b)

2020-07-23 16:00:18 515644 1

原创 (精华)2020年7月22日 ASP.NET Core Worker Service构建系统服务实现任务调度

使用vs2019创建Worker Service程序首先nuget安装Microsoft.Extensions.Hosting.Windows在Program中添加UseWindowsService()public class Program { public static void Main(string[] args) { CreateHostBuilder(args).Build().Run(); }

2020-07-22 16:46:24 515693 1

原创 (精华)2020年7月22日 C#基础知识点 Flags特性

public enum Equipment{ 刀, 枪, 箭, 弓}public sealed class Player{ internal Equipment equipmentState;//用于描述角色可以使用哪些武器 //......其它成员}namespace UsageOfFlagsAttribute{ [Flags] public enum Equipment { NONE = 0x0000

2020-07-22 13:51:24 515454 1

原创 (精华)2020年7月22日 ASP.NET Core Swagger的使用(NSwag工具版)

首先安装包Install-Package NSwag.AspNetCorepublic void ConfigureServices(IServiceCollection services){ //swagger services.AddOpenApiDocument(settings => { settings.AddSecurity("身份认证Token", Enumerable.Empty<string>(), new OpenApiSecuritySch

2020-07-22 09:27:52 515837 1

原创 (精华)2020年7月21日 ASP.NET Core 注入日志三种方式

public class Startup { public IConfiguration Configuration { get; private set; } public IHostingEnvironment HostingEnvironment { get; private set; } //在构造函数中注入 IHostingEnvironment和IConfiguration,配置已经在Program中设置了,注入后就可以获取配置文件的数据

2020-07-21 17:14:57 517562 1

原创 (精华)2020年7月21日 ASP.NET Core 访问http请求的的上下文(HttpContext)

#region 启用IHttpContextAccessorservices.AddHttpContextAccessor();#endregion访问public class MyService{ public void DoWork() { var context=HttpContext.Current; // continue with context instance }}

2020-07-21 17:08:51 517442 1

原创 (精华)2020年7月21日 ASP.NET Core 使用NewtonsoftJson替换掉默认的json序列化组件

#region 使用NewtonsoftJson替换掉默认的json序列化组件.AddNewtonsoftJson(options =>{ ////修改属性名称的序列化方式,首字母小写 //options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); ////修改时间的序列化方式 //options.SerializerSettings.Con.

2020-07-21 16:52:19 518780 1

原创 (精华)2020年7月21日 ASP.NET Core 容器伪属性注入

Controller 默认是不会通过自带容器来 Resolve&Activate 的,是通过MVC自身管理的。可以通过调用 AddControllersAsServices()方法来让 Controller 使用自带容器。services.AddControllers().AddControllersAsServices();AddControllersAsServices源码如下定义 Controller 基类Controller 继承基类改造 Controller 激活器替

2020-07-21 16:34:30 517505 2

原创 (精华)2020年7月21日 ASP.NET Core 全局过滤器的使用

#region 添加全局异常过滤器和参数校验过滤器services.AddControllers(options =>{ options.Filters.Add<ValidFilterAttribute>(); options.Filters.Add<GlobalExceptionFilter>();});#endregionValidFilterAttribute//参数校验public class ValidFilterAttribute :

2020-07-21 16:19:38 517396

原创 (精华)2020年7月21日 ASP.NET Core 模型验证过滤器

在.Net Core的时代中,框架会帮你自动验证model的state,也就是ModelState。框架会为你自动注册ModelStateInvalidFilter,这个会运行在OnActionExecuting事件里面。基于现有框架的代码编写的话,所以我们不再需要在业务中耦合这样的模型判断代码,系统内部会检查ModelState是否为Valid,如果为InValid会直接返回400 BadRequest,这样就没有必要执行后面的代码,提高效率。因此,操作方法中不再需要以下代码:if (!ModelSt

2020-07-21 16:15:19 517588

原创 (精华)2020年7月20日 ASP.NET Core CSRedisCore的使用

首先安装如下包Install-Package Caching.CSRedisInstall-Package CSRedisCoreInstall-Package Microsoft.Extensions.Caching.Memory/// <summary>/// 使用缓存/// </summary>/// <param name="hostBuilder">建造者</param>/// <returns></return

2020-07-20 15:16:37 518127 1

原创 (精华)2020年7月20日 ASP.NET Core log4.net日志框架的使用

首先按照如下两个包Install-Package Microsoft.Extensions.Logging.DebugInstall-Package Microsoft.Extensions.Logging.Log4.AspNetCore在根目录下新建log4net.Config<?xml version="1.0" encoding="utf-8"?><log4net> <!-- Define some output appenders --> &lt

2020-07-20 14:06:29 517802

原创 (精华)2020年7月20日 ASP.NET Core serilog日志框架的使用

首先按照如下两个包Install-Package Serilog.AspNetCoreInstall-Package Serilog.Sinks.Elasticsearch封装使用/// <summary>/// 配置日志/// </summary>/// <param name="hostBuilder">建造者</param>/// <returns></returns>public static IHostB

2020-07-20 14:02:12 517943 2

空空如也

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除