React笔记(五)
知识点回顾eg:代表代码对照
若文章有误,欢迎读者指出
插值 {} 变量,表达式,函数调用 ☞ 落脚点是值
动态属性 属性={ 变量 }
样式写法 className={ 变量 } className={'active btn'} className={ arr.join(' ') }style={{ fontSize:'12px',color:变量 }}
循环
12345678<ul> {arr.map((item,index)=>{return <li key={ item.id }>{ item }</li>}) }</ul><ul> { Object.keys(obj).map((item,index)=>{return < ...
React笔记(四)
知识点回顾eg:代表代码对照
若文章有误,欢迎读者指出
插值 {} 变量,表达式,函数调用
动态属性 属性={ 变量 }
样式写法 className={ 变量 } className={'active btn'} className={ arr.join(' ') }style={{ fontSize:'12px',color:变量 }}
循环 12345678910<ul>{arr.map((item,index)=>{return <li key={ item.id }>{ item }</li>})}</ul><ul>{Object.keys(obj).map((item,index)=>{return <li key={ item ...
React笔记(三)
组件传值eg:代表代码对照
若文章有误,欢迎读者指出
组件的嵌套组件的嵌套,直接引入组件,然后直接当作自定义标签占位符使用【不需要注册】
props传值组件间传值,在React中是通过只读属性 props 来完成数据传递的。
props:接受任意的入参,并返回用于描述页面展示内容的 React 元素。
函数组件
函数组件可以通过props直接获取父组件传递的值【没有this,注意得把props传递进去,才能使用props】
123456789101112{ /* 父组件 */ }<Child2 hobby={'aaaa'}/>{ /* 子组件 */ }const Child2 = (props) => { // 函数组件可以通过props直接获取父组件传递的值【没有this,注意得把props传递进去,才能使用props】 return ( <div> 爱好-{props.hobby ...
React笔记(二)
脚手架创建React项目eg:代表代码对照
若文章有误,欢迎读者指出
全局安装React脚手架npm install -g create-react-app构建一个my-app的项目create-react-app my-app 或 npx create-react-app my-app
清除文件[全部删除]
App.css
App.test.js
index.css
logo.svg
reportWebVitals.js
setupTests.js
清除入口文件内容只保留下面这部分,严格模式等都清除
12345678import React from 'react'import ReactDOM from 'react-dom/client'import App from './App'const root = ReactDOM.createRoot(document.getElementById('root'))root.render( <App />)
清除根组 ...
React笔记(一)
JSX语法eg:代表代码对照
若文章有误,欢迎读者指出
html文件中引入123<!-- vue就vue这个核心包,react有两个,react react-dom --><script src="https://unpkg.com/react@16/umd/react.development.js" crossorigin></script><script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js" crossorigin></script>
挂载点1<div id="app"></div>
ReactDOM.render
react代码ReactDOM.render 这个是react-dom提供的方法,render把模板变成虚拟dom
参数1 类似于document.createElement(标签名,属性值,内容)
参数2 指定挂载点 ...
ES6模块化理解
模块化若文章有误,欢迎读者指出
vue中的模块化、组件化,把部分html,独立成一个.vue文件,这个文件我们组件。
es6模块化规范语法:
声明时导出,在声明变量、函数或类时前面加上export,但是这样导入时就得加上大括号
独立使用export声明,一个export关键字加上变量名列表,但是这样导入时就得加上大括号
export { a, b, c } 对应 import { a, b, c } from ‘xx.js’
export和default联合使用,export default表示导出一个默认变量值,后面可接表达式
原始值都是不能成为指定对外接口=>export和export default都可以直接导出函数、对象
export default后面不能接var?
default的本质是变量也是指定对外接口,而export default命令的本质是将后面的值,赋给default变量,所以可以直接将一个值写在export default之后。
直观解释default = var a = 1 或者说 b = var a = 1【很显然会报错】
...
图床搭建
若文章有误,欢迎读者指出
vscode安装插件
picgo插件设置图床选用github
Vue项目搭建流程
项目搭建流程若文章有误,欢迎读者指出
搭建Vue后台项目Vue工具安装
vue脚手架工具(vue命令行工具)vue command line tool,简单的来讲,就是一个基于命令行的vue开发工具。[注:Vue-CLI ≠ Vue,Vue-CLI就是一个Vue工具,重点在于指令,安装了就可以使用指令创建项目。]
myadmin【后台管理项目】vue创建项目
vue create [项目名称]vue create myadmin
Please pick a preset: (Use arrow keys) Manually select features 【上下方向键选中手动配置然后回车】
Check the features needed for your project:【空格进行选择和不选择】选择Babel、Router、Vuex、CSS Pre-processors
Choose a version of Vue.js that you want to start the project with (Use arrow keys) 选择2.x
Use history ...
npm基本使用
npm基本使用若文章有误,欢迎读者指出
npm init -y 可以快速生成一个package.json文件
没有该包管理文件,就没法安装依赖得到node_modules
npm i -S 包名@版本号,指定版本安装【不指定版本号就会安装最新版本】
npm i -D 包名@版本号,指定版本安装【不指定版本号就会安装最新版本】
【注意:打包时不包含开发环境的包,会出现丢包,不知道安装在哪就安装到运行环境,运行环境不会出现丢包】
切换阿里的镜像源1npm i -g cnpm --registry=https://registry.npm.taobao.org
cnpm -v可以用来检测是否安装成功,之后使用cnpm i -S 包名来安装我们需要的包
-g、-S、-D参数说明
npm i moduleName局部安装,安装依赖到项目根目录的node_modules目录下,老版本不写入节点【npm 5.0+ 版本默认添加到package.json文件中的dependencies节点中】,npm i时不下载该依赖
npm i -g moduleName全局安装,不在node_modu ...
node.js搭建后台流程
node.js搭建后台流程若文章有误,欢迎读者指出
数据库准备工作和插件安装【提前创建好项目文件夹】
在终端启动mongoDB服务器,进入mongoDB交互式shellmongo
创建数据库[切换数据库]use 数据库名
use切换数据库时,若库存在则切换,如果数据库不存在则创建并切换use创建的数据库只是一个空的数据库,没有集合,所以show dbs不显示空数据库。
可以使用db命令来查看当前所在的数据库名称:db
创建表并插入几条数据
==表是不需要先行进行定义的==,当我们往一个表中插入记录后,表就自动出来了。JSON格式数据:不是严格意义上的json数据,key名可以不使用引号包裹
12db.表名/集合名.insert(JSON格式数据)# 表名/集合名是不存在的(第一次插入数据的时候),当数据插入完毕则表名就存在了
查看数据db.表名加上s.find()
安装express+Mongoose+art-template模板引擎(默认你已经安装好了nodejs和express)
12345// 全局安装expressnpm install express - ...
