我的账户
猩码学苑

专注C++开发菁英教育

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

陈紫怡-20221207-Node.js2

[复制链接]
Dasmondlicht 发表于 2022-12-12 00:23:40 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
一、今日学习内容:
  • 绝对路径
    • 相对路径的缺陷
      • 案例:在不同的目录下启动服务器,并通过浏览器访问
      • eg1:
        • D:\Users\Desktop\node\1-path

        • 启动命令:   node   1-server.js
        • 启动服务器后能够正常通过浏览器访问
      • eg2:
        • D:\Users\Desktop\node

        • 启动命令:    node    ./1-path/1-server.js
        • 启动服务器后无法通过正常浏览器访问
        • 原因:控制台使用当前绝对路径拼接readFile中的相对路径,多以读取文件失败
  • 路径变量
    • __dirname:获取当前文件所处目录的绝对路径
    • __filename:获取当前文件的绝对路径
    • 特点:
      • 跨平台,自动处理路径分隔符  / 和 \
    • 注意:
      • windows两种斜杠都认识,默认使用\
      • Linux系统只认识/,不认识 \
  • path模块(系统模块)
    • join方法
      • 能够根据不同参数不同系统组装不同的文件地址
      • eg:
        • const  path=require('path');
        • path.join('aaa' , 'bbb' , 'ccc' );
          aaa\bbb\ccc
    • sep属性
      • /  或 \,window系统是 \,Linux系统是 /
    • dirname()
      • 获取文件路径(不包含文件名)
    • basename()
      • 获取文件名(不包含目录路径)
    • extname()
      • 获取文件后缀
  • 读取文件优化
    • 封装函数
      • 核心:res对象上挂载一个新的方法(函数),该方法可以根据路径读取文件并将内容返回给浏览器
  • art-template模板引擎
    • 介绍
      • 模板引擎的本质是一种字符串的拼接技术
      • 按照规则在模板页(网页)上挖坑,布置数据规则
      • 再将数据和模板组合成一个字符串
    • 基本使用
      • 步骤:
        • 1)安装/下载 模板引擎    (npm  install  art-template)
        • 2)加载 art-template模块       (require)
          • const  template  =  require ('art-template')
        • 3)准备模板页(一般是html页面)和要显示在页面上的数据(js对象)
        • 注意:属性不加双引号或者加双引号均可,但是切忌不要加单引号。此处不报错,但是其他的位置可能会出错
        • html页面(模板页)上使用特殊标记({{key}}),将要显示数据的位置标记出来,此处的key就是js对象的属性
        • 4)调用模板引擎核心方法(template)组装模板和数据,得到一个字符串
          • let  htmlStr=template('模板文件绝对路径' ,'要显示出来的数据----js/json对象')
          • 返回值:数据和模板组装好的字符串
        • 5)将组装好的字符串通过res.end方法返回给浏览器       res.end(HTMLStr)
    • 循环结构----each
      • 语法:
        • {{each  data  value  index}}
                  输入内容

        • {{/each}}

        • data:要循环输出的数组
        • value:单元值
        • index:单元索引(一般不用)
    • 选择结构----if. . .else
      • 语法:
        • {{ if  判断表达式 }}
                     结果
        • {{ /if }}
  • 表单提交
    • 表单标签:form、input、select-option、textarea
    • 表单提交有两种方式:get(默认)和post(常用)
    • post提交
      • 1)post标点提交的必要条件
        • 必须有form标签
          • action:表单数据提交的位置,必须是一种后端技术来接收
          • method:表单提交的方式,post(常用)、get(默认)
        • 每个表单域都要有name属性和值
        • 必须要有submit按钮来提交表单数据
      • 2)后端接收----post方式
        • data事件:
          • 用来接收表单数据,表单数据会被切割成一块一块,data事件会循环来接收
        • end事件
          • 当表单数据接收完成后会自动触发,此时可以操作比哦啊单提交的数据
  • get和post的区别
    • 通过URL地址栏来区分post和get
    • 1)提交方式
      • get会将数据显式的拼接到URL地址栏中(字符串)
      • /form?id=10001&username=heiheihei&passwd=123456&key=value....
      • key=value方式传参,多个参数之间使用&符号隔开

      • post不会显示出来
    • 2)传递数据量大小
      • post最小值2M,理论上没有上限
      • get会受到浏览器地址栏的限制。有的是2k(IE6),有的是8k(Chrome)
    • 3)应用范围不一样
      • post在绝大多数情况下都使用表单提交
      • get的应用范围比较广,只要能进行页面跳转,就能传递数据。
      • 在a标签的href中,location.href中等都能使用get方式。

回复

使用道具 举报

关注0

粉丝0

帖子50

发布主题
大家都在学
课堂讨论
一周热帖排行最近7x24小时热帖
关注我们
专注C++菁英教育

客服电话:18009298968

客服时间:9:00-21:00

猩码学苑 - 专注C++开发菁英教育!( 陕ICP备2025058934号-1 )

版权所有 © 陕西菁英数字科技有限公司 2023-2026