自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

秋堂主的博客

丢掉幻想,准备战斗

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

原创 2025第3周 | json-server的基本使用

`Json-server` 是一个无需编写任何代码,便可快速搭建本地 RESTful API 的工具。专为需要快速后端进行原型设计和模拟的前端开发人员而创建。这大大方便了前端开发人员,需要做一些与后台的交互。

2025-01-16 18:03:03 786 1

原创 2025第3周 | JavaScript中es7新增的特性

了解 JavaScript中es7新增的特性: Array Includes?指数运算符?在ES7(es2016)之前,如果我们想判断一个数组中是否包含某个元素,需要通过 `indexOf` 获取结果,并且判断是否为 `-1`. 2. 在ES7中,我们可以通过`includes`来判断一个数组中是否包含一个指定的元素,根据情况,如果包含则返回 `true`否则返回`false`。

2025-01-13 18:15:48 377

原创 2025第2周 | JavaScript中的展开语法

展开语法 (`Spread syntax`), 可以在函数调用/数组构造时,将`数组表达式`或者 `string` 在语法层面展开;还可以在构造字面量对象时,将对象表达式按 `key-value` 的方式展开。总结一下:- 可以在**函数调用/数组构造**时,将数组(`Set`也支持)表达式或者`string`在语法层面展开- 还可以在**构造字面量对象**时,将对象表达式按`key-value`的方式展开;

2025-01-10 18:02:46 831

原创 2025第2周 | JavaScript中Set/WeakSet和Map/WeakMap

在`ES6`之前,我们存储数据的结构主要有两种:数组、对象。在`ES6`中新增了另外两种数据结构:`Set`、`Map`,以及它们的另外形式`WeakSet`、`WeakMap`。`Set`是一个新增的数据结构,可以用来保存数据,类似于数组,但是和数组的区别是:**Set中的元素不能重复**。创建`Set`我们需要通过**Set构造函数**(暂时没有字面量创建的方式)

2025-01-09 17:13:25 944

原创 2025第2周 | JavaScript中的Symbol

Symbol是什么呢?Symbol是ES6中新增的一个基本数据类型。每个从 Symbol() 返回的 symbol 值都是唯一的。一个 symbol 值能作为对象属性的标识符,这是该数据类型仅有的目的。 ○ 该类型具有静态属性和静态方法。 ○ 不支持语法:"new Symbol()"● 那么为什么需要Symbol呢? ○ 在ES6之前,对象的属性名key都是字符串形式(无论你加不加引号),那么很容易造成属性名的冲突。

2025-01-08 18:02:42 991

原创 2025第2周 | JavaScript中的函数的参数默认值和剩余参数

`ES6`中引用了剩余参数(`Rest parameter)`,可以将不定数量的参数放入到一个数组中。在函数中,最后一个参数是以`…`为前缀的,那么它会将剩余的参数放到该参数中,并且作为一个数组。有默认值的形参,建议放到最后,这样可以省略一些不必要的参数传递。形参有默认值会改变函数的`length`的值,默认值以及后面的参数都不计算在`length`之内了。

2025-01-07 18:15:29 821

原创 2025第1周 | JavaScript中的正则表达式

正则表达式(`Regular Expression`):又称规则表达式,在代码中常简写为`regex`、`regexp`或`RE` 。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式(规则)的文本。许多程序设计语言都支持利用正则表达式进行字符串操作。其实就一句话:**在JavaScript中,就是用来进行字符串匹配的,进行搜索、获取、替代字符串**。

2025-01-06 17:49:34 1277

原创 vscode | 开发神器vscode快捷键删除和恢复

在vscode使用的过程中,随着我们自身需求的不断变化,安装的插件将会持续增长,那么随之而来的就会带来一个问题:插件的快捷键重复。快捷键重复导致的问题就是快捷键不好使了,那么我们又该怎么处理呢?针对该问题,解决办法之一就是删除重复的快捷键。删除很简单,小手一抖解决了。但是当我们删错了,该怎样恢复呢?

2024-10-28 17:49:49 1089

原创 Caché Objects | 第八章 | 定义和调用方法

若要将类方法MethodName是方法的名称。Arguments是以逗号分隔的参数列表。Classname是一个可选的类名,表示此方法返回的值(如果有)的类型。如果方法不返回值,则省略部分。该类可以是数据类型类(DTC)、对象类或(不太常见的)无类型的类。类名可以是完整的类名,也可以是简短的类名。Keywords表示任何方法关键字。这些是可选的。请参阅本书前面的“编译器关键字”。方法的实现取决于方法的实现语言和类型。默认情况下,方法实现由零行或多行组成。若要将实例方法。

2024-01-04 10:27:26 1127

原创 Caché Objects | 第七章 | 类查询(CQ)

类查询) ,简称CQ是一种工具,包含在类中,用于动态SQL,用于查找满足指定条件的记录。使用类查询,您可以为应用程序创建预定义的查找。例如,您可以按名称查找记录,或提供满足一组特定条件的记录列表。通过创建类查询,可以避免按内部ID查找特定对象。相反,您可以创建一个基于所需的任何类属性进行查找的查询。这些甚至可以在运行时从用户输入中指定。如果定义自定义类查询,则查找逻辑可以使用,并且可以任意复杂。基本CQ,使用类%SQLQuery和SQL SELECT语句。自定义CQ,它使用类%Query。

2024-01-03 12:58:08 1191

原创 Caché Objects | 第六章 | 定义数据类型类(DTC)

DTC它们通过提供SQL 逻辑操作、客户端数据类型 和 转换信息 来提供 SQL、ODBC、ActiveX 和 Java 互操作性。它们为文本数据值提供验证,您可以使用DTC类参数扩展或自定义这些值。它们管理文本数据的存储(在磁盘上)、逻辑(在内存中)和显示格式的转换。有关编译器如何使用DTC为属性生成代码的信息,请参阅“使用和重写属性方法”一章。若要轻松定义DTC,请首先确定符合您需求的现有DTC, 然后创建此类的子类。为关键字和OdbcType指定合适的值。根据需要覆盖任何类参数。

2024-01-02 12:09:57 1154

原创 Caché Objects | 第五章 | %Dictionary Classes 的使用

类定义类提供对Caché统一字典的对象和SQL访问。使用这些类,可以以编程方式检查类定义、修改类定义、创建新类,甚至编写自动生成文档的程序。这些类包含在包。注意在%Library包中定义了一组较旧的类定义类。这些是为了与现有应用程序兼容而维护的。新代码应该使用包中的类。使用这些类时,请确保指定了正确的包名称,否则可能会无意中使用错误的类。有两组并行的类定义类:表示已定义类的类和表示已编译类的类。定义的类定义表示特定类的定义。它仅包含该类定义的信息;它不包括从超类继承的信息。

2023-12-29 15:09:20 1239

原创 Caché Objects | 第四章 | Registered Objects 的使用

`%RegisteredObject` 类提供了一种验证实例属性的方法。如果满足以下所有条件,则对象有效:- 所有必需的属性都有值。(若要使属性成为必需属性,请使用 `Required` 关键字。如果属性的类型为 `%Stream`,则该流不能为 `null` 流。也就是说,如果 `%IsNull()` 方法返回 0,则认为该属性具有值。- 每个属性的值(如果不是 `null`)对于关联的属性定义有效。例如,如果属性的类型为 `%Boolean`,则值`“abc”`无效,但值 `0` 和 `1`

2023-12-28 18:00:52 1024

原创 Caché Objects | 第三章 | 特定于对象的 ObjectScript 功能

包含特定于处理类和对象的功能。这些是:相对点语法(..)—— 用于访问当前对象的属性或调用当前对象的方法。##class语法 —— 用于调用类方法,将对象引用强制转换为另一个类以调用方法,或访问类参数的值。$this语法 —— 用于获取当前实例的OREF的句柄,例如将其传递给另一个类或另一个引用当前实例的属性或方法的类。##super语法 —— 用于从子类方法中调用超类方法。动态访问对象 —— 用于调用类方法和实例方法,以及用于引用对象属性。

2023-12-27 13:17:38 1058

原创 Caché Objects | 第二章 | 使用和重写属性方法

属性具有许多自动关联的方法。这些方法不是通过标准继承继承的。相反,它们使用特殊的属性行为机制为每个属性生成一系列方法。%Property类,它提供某些内置行为,例如Get()Set()和验证代码。属性使用的数据类型类(如果适用)。其中许多方法都是方法生成器。属性行为类是系统类。不能指定或修改属性行为。编译的Person类具有为其每个属性自动生成的一组方法。这些方法继承自系统Property类以及与属性关联的数据类型类。这些生成方法的名称是属性名称,该名称与继承类中的方法名称连接在一起。

2023-12-26 13:54:37 913

原创 Caché Objects | 第一章 | 简介

每个类都有一个定义,该定义指定它包含的成员(属性、方法等)以及类范围的特征(如超类)。这些定义包含在类字典中,而类字典本身存储在Caché 数据库中。可以通过多种方式创建类定义使用Studio。使用 Caché 类定义的主要方法是使用 Studio 开发环境。使用XML。类定义具有基于 XML 的外部表示形式。通常,此格式用于在外部存储类定义(例如在源代码管理系统中)、部署应用程序或仅用于共享代码。

2023-12-21 14:39:40 1017

原创 vscode | 开发神器vscode自定义用户代码片段

代码段可以使用特殊构造来控制光标和要插入的文本。2. 打开文件之后,右击文件名——>在文件资源管理器中显示。当前 UTC 时区偏移量为 或(示例)。两位数的月份中的日期(示例“08”)点击:左下角设置齿轮按钮——>两位数的月份(例如“02”)当天的简称(例如“星期一”)自 Unix 纪元以来的秒数。点击:新建全局代码片段文件。月份的全名(例如“七月”)月份的简称(例如“七月”)日期名称(例如“星期一”)小时制格式的当前小时。当前分钟以两位数表示。

2023-08-26 12:48:21 522

原创 vscode | 开发神器vscode必备优秀插件

**Visual Studio Code**简写为`vscode`,是一个轻量级但功能强大的源代码编辑器。已经成为我们工作中必备之神器。`工欲善其事,必先利其器`。其中`插件`对于我们提高效率有着举足轻重的地位。就个人而言,比较推荐vscode必备优秀插件大概如下:- `koroFileHeader`- `Markdown Preview Enhanced`- `filesize`- `Project Manager`- `Live Server`- `Bookmarks`- `Image p

2023-08-24 21:08:43 1480

原创 第19集丨Vue 江湖 —— ref属性

ref属性1. 被用来给`元素`或`子组件`注册引用信息(`id`的替代者)2. 应用在`html`标签上获取的是`真实DOM元素`,应用在`组件标签`上是`组件实例对象(vc)`3. 使用方式: a. 打标识:`.....`或`` b. 获取使用:`this.$refs.xxx`

2023-08-21 19:11:52 184

原创 第18集丨Vue脚手架的默认配置

`Vue`脚手架隐藏了所有 `webpack` 相关的配置,若想查看具体的 `webpak` 配置,请执行:`vue inspect > output.js`

2023-08-20 12:20:09 302

原创 第17集丨Vue中的render函数

- `vue.js` 与`vue.runtime.xxx.js`的区别: (1). `vue.is`是完整版的`Vue`,包含:核心功能+模板解析 (2). `vue.runtime.xxx.js`是运行版的`Vue`,只包含:核心功能,没有模板解析器。- 因为`vue.runtime.xxx.js`没有模板解析器,所以不能使用`template`配置项,需要使用`render`函数接收到的`createElement`函数去指定具体内容。

2023-08-19 22:40:38 209

原创 第16集丨一起创建Vue脚手架吧

本节带你一起创建vue脚手架,并分析脚手架产生的目录结构。

2023-08-18 18:49:11 196

原创 vscode | 开发神器vscode必会快捷键

**Visual Studio Code**简写为`vscode`,是一个轻量级但功能强大的源代码编辑器。已经成为我们工作中必备之神器。`工欲善其事,必先利其器`,因此掌握其`快捷键`尤为重要,不仅能关乎我们对软件的熟练程度,也决定了工作效率。本章,将分为`十五个`部分,分别为各位介绍工作过程中常见之快捷键,充分发挥软件之功能,提高工作效率。

2023-08-17 16:29:59 3043

原创 第15集丨Vue中的组件基础概念

使用创建,其中options和时传入的那个options几乎一样但也有点区别。el不要写,为什么?—最终所有的组件都要经过一个vm的管理,由vm中的el决定服务哪个容器。data必须写成函数,为什么?——避兔组件被复用时,数据存在引用关系(因为如果直接写一个对象,组件复用的时候共用一个对象,容易引起问题)。备注:使用template可以配置组件结构。

2023-08-16 23:08:03 193

原创 第14集丨Vue2 基础 —— 生命周期

每个Vue实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听、编译模板、将实例挂载到DOM并在数据变化时更新DOM等。同时在这个过程中也会运行一些叫做生命周期钩子的函数,这给了用户在不同阶段添加自己的代码的机会。比如created钩子可以用来在一个实例被创建之后执行代码。也有一些其它的钩子,在实例生命周期的不同阶段被调用,如mountedupdated和destroyed。生命周期钩子的this上下文指向调用它的Vue实例。

2023-08-15 18:50:11 130

原创 第13集丨Vue 江湖 —— 自定义指令

`Vue`中,所谓的指令,其实就是把原生操作`dom`的过程进行了封装。需求:定义一个v-big指令,和v-text功能类似,但会把绑定的数值放大10倍。需求:义一个v-fbind指令,和v-bind功能类似,但可以让其所绑定的input元素默认获取焦点。bigNumber,要使用连接,即要定义成。

2023-08-14 09:23:41 128

原创 第12集丨Vue 江湖 —— 内置指令

到本节为止,我们学过的指令:v-bind:单向绑定解析表达式。v-model:双向数据绑定。v-for:历数组/对象/字符串等v-on:绑定事件监听,可简写为`@`。v-if:条件渲染(动态控制节点是否存在)。v-else:条件渲染(动态控制节点是否存在)。v-show:条件渲染(动态控制节点是否展示)。

2023-08-13 12:35:41 154

原创 第11集丨Vue 江湖 —— 过滤器(filter)

过滤器:1. **定义**:对要显示的数据进行特定格式化后再显示(`适用于一些简单逻辑的处理`)。2. **语法**:a. 注册过滤器:全局过滤器`Vue.filter(name, callback)`或 局部过滤器`new Vue{filters:{}}` b. 使用过滤器:`{{ xxx | 过滤器名| 过滤器名}}` 或 `v-bind:属性= "xxx | 过滤器名"` 3. **备注**: a. 过滤器也可以接收额外参数、`多个过滤器也可以串联` b. 并`没有改变原本的数据。

2023-08-12 12:33:56 191

原创 第10集丨Vue 江湖 —— 表单输入绑定

则v-model收集的是value值,用户输入的就是value值。,则v-model收集的是value值,且要给标签置value值。a. 没有配置input的value属性,那么收集的就是checked(勾选or未勾选,是布尔值b. 若配置了input的valueⅰ. 【v-model】的初始值是【非数组】,那么收集的就是【checked】(勾选or未勾选,是布尔值)ⅱ. 【v-model】的初始值是数组,那么收集的的就是【value组成的数组】v-model的三个修饰符:a.lazy。

2023-08-11 09:11:51 126

原创 第9集丨Vue 江湖 —— 监测数据原理

`Vue`监测到`data`中的数据(`所有层次的数据`)发生变化,就会调用`setter`重新解析模板,解析引用的到的数据的值。`数据劫持`:在访问或修改对象的某个属性时,通过一段代码拦截这个行为,进行额外的操作,如修改返回结果。`Vue 2.x` 使用的是 `Object.defineProperty()`,而 `Vue` 在 `3.x` 版本之后改用 `Proxy` 进行实现

2023-08-10 12:11:51 149

原创 第8集丨Vue 江湖 —— 列表渲染

v-for指令用于展示列表数据,语法格式:`v-for="(item, index) in/of xxx" :key="yyy"`。可遍历:数组、对象、字符串、指定次数。`key`是虚拟`DOM`对象的唯一标识- 当状态中的数据发生变化时,`Vue`会根据【`新数据`】生成【`新的虚拟DOM`】- 随后`Vue`进行【`新虚拟DOM`】与【`旧虚拟DOM`】的差异进行比较。

2023-08-09 08:52:56 126

原创 第7集丨Vue 江湖 —— 条件渲染

本节`条件渲染`所涉及到的指令有:`v-show`、 `v-if`、`v-else-if`、`v-else`。`v-if` 指令用于条件性地渲染一块内容。这块内容只会在指令的表达式返回 `true`值的时候被渲染。`v-if`可以和`v-else-if`、 `v-else` 一起使用, 但要求结构不能被**打断**,即用该指令的结构要挨在一起。

2023-08-08 08:52:24 112

原创 第6集丨Vue 江湖 —— Class 与 Style 样式绑定

操作元素的class列表和内联样式是数据绑定的一个常见需求。因为它们都是attribute,所以我们可以用v-bind处理它们:只需要通过表达式计算出字符串结果即可。不过,字符串拼接麻烦且易错。因此,在将v-bind用于class和style时,Vue.js做了专门的增强。表达式结果的类型除了字符串之外,还可以是对象或数组。

2023-08-07 08:53:50 119

原创 第5集丨Vue 江湖 —— 监视属性/侦听属性

`Vue` 提供了一种更通用的方式来观察和响应 Vue实例上的数据变动:**侦听属性**,也成为`监视属性`。1. 当被监视的属性变化时,回调函数`handler`自动调用,进行相关操作。2. 监视的属性必须存在,才能进行监视。3. 监视的两种写法 a. `new Vue`时传入`watch`配置 b. 通过`vm.$watch`来动态实现监视

2023-08-06 10:29:31 302

原创 第4集丨Vue 江湖 —— 计算属性

所谓`计算属性`,就是要用的属性不存在,要通过已有的属性加工、计算生成一个全新的属性。对于`Vue`来说,`data`中配置的就是属性。`计算属性`与`data`中定义的属性分开。2. 原理:底层借助了`Object.defineProperty()`方法提供的`getter`和`setter`。3. `get`函数的作用 a. 当有程序读取`计算属性`时,`get`就会被调用,且返回值就作为`计算属性`的值。即`计算属性`是实时计算的属性。 b. `Vue`做了缓存,当所依赖的数据没有发生变化

2023-08-05 10:50:53 302

原创 第3集丨Vue 江湖 —— Vue中的事件

Vue事件的基本使用:1. 使用 `v-on:xxx` 或 `@xxx` 绑定事件,其中`xxx`是事件名2. 事件的回调需要配置在`methods`对象中,最终会在`vm`实例上,不会做数据代理。不要放在`data`中,否则也会为所增加的方法进行数据代理,设置`setter`和`getter`。3. `methods`中配置的函数,不要用箭头函数,否则`this`就是不是`vm`了。4. `methods`中配置的函数,都是被`Vue`所管理的函数,`this`的指向是`vm` 或 组件实例对象

2023-08-04 08:58:18 285

原创 第2集丨Vue 江湖 —— Vue中的一些必备概念

本节介绍:Vue中的模板语法、数据绑定、MVVM模型、数据代理、Object.defineProperty()等。Vue模板语法分为2类:插值语法、指令语法。`Vue` 中有2种数据绑定方式:单向绑定(`v-bind` ):数据只能从`data` 流向页面。双向绑定(`v-model`):数据不仅能从`data` 流向页面,还可以从页面流向`data`。`Object.defineProperty() `静态方法会直接在一个对象上定义一个新属性,或修改其现有属性。允许精确地添加或修改对象上的属性。默认情况下

2023-08-02 19:07:19 206

原创 第1集丨Vue 江湖 —— Hello Vue

Vue(读音 /vjuː/, 类似于view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,VueVue是一套构建用户界面的渐进式框架。Vue只关注视图层, 采用自底向上增量开发的设计。Vue的目标是通过尽可能简单的API实现响应的数据绑定和组合的视图组件。

2023-08-01 08:55:15 164

原创 第5集丨webpack 江湖 —— 项目发布 和 source map

使用场景:当我们引用文件时候,使用../../这种模式,当文件目录很深的时候,就很不方便我们查找。解决方案:使用符号,表示src目录,从外往里找。不要使用../从里往外找。

2023-07-31 08:33:31 192

原创 第4集丨webpack 江湖 —— loader的安装和使用

`Webpack` 本身只能处理 `JavaScript` 模块,如果要处理其他类型的文件,就需要使用` loader `进行转换。`Loader` 可以理解为是模块和资源的转换器,它本身是一个函数,接受源文件作为参数,返回转换的结果。这样,我们就可以通过` require` 来加载任何类型的模块或文件,比如 `CoffeeScript`、 `JSX`、 `LESS` 或图片。`loader` 用于对模块的源代码进行转换。`loader` 可以使你在` ​import​ `或 "`load`(加载)" 模块

2023-07-28 11:53:26 1401

空空如也

空空如也

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

TA关注的人

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