类型声明,限定和断言
类型推断
下面这种示例是ts自动推断
let str = '123'
str = 123 // 类型错误:不能将类型"number"分配给类型"string"
ref()和reactive()
ref()
在组合式 API 中,推荐使用 ref() 函数来声明响应式状态:
可以看出,ref() 函数返回一个可变的响应式 ref 对象,它包含一个名为 value 的属性,我们可以通过 .value 访问其中的值:
//初始化加载样式
const loading = ref(true);
//是否开启弹窗
const dialogVisible = ref(false);
//弹窗标题
const dialogTitle = ref("");
//添加用户
const handleAddUser = () => {
dialogTitle.value = "添加顶级用户";
dialogType.value = 10;
dialogVisible.value = true;
};
计算属性,defineModel(),watch()侦听器
示例用户列表的分页(父组件)
下面代码父组件定义计算属性和侦听器
src\pages\laravel-fast-api\v1\user\user\userList\index.vue
<!-- 分页区开始 -->
<template #paginate>
<div>
<YhPaginate
v-model:current-page="currentPage"
v-model:page-size="pageSize"
v-model:total="total"
:page-sizes="[5, 10, 20, 30, 40, 50,100]"
/>
</div>
</template>
<!-- 分页区结束 -->
<script setup lang="ts">
//搜索查询条件
const where = ref({
//查找内容
find: "",
//查找下标
findSelectIndex: 0,
//时间范围
timeRange: [],
//是否禁用
switch: null,
//排序方式
sortType: 2,
// 0 不导出 1导出
isExport: 0,
// 导出类型 1本页 2全部
exportType: 1,
// 分页
currentPage: 1,
//每页条数
pageSize: 10,
//数据总数
total: 0,
});
//将分页处理定义为计算属性
//当前页
const currentPage = computed({
get() {
return where.value.currentPage;
},
set(newValue) {
where.value.currentPage = newValue;
},
});
//页面条数
const pageSize = computed({
get() {
return where.value.pageSize;
},
set(newValue) {
where.value.pageSize = newValue;
},
});
//计算总数
const total = computed({
get() {
return where.value.total;
},
set(newValue) {
where.value.total = newValue;
},
});
//侦听分页变化
watch([currentPage, pageSize], () =>
{
getUserList()
})
</script>
前言
在软件开发与项目运营场景中,核心业务源码、底层逻辑架构是企业最珍贵的无形资产。
现实行业里普遍存在开发人员离职、外包团队私自备份、源码随意流转倒卖等乱象,一套成熟可落地的业务系统,往往因源码外泄被低价复制、跟风复刻,直接造成原创公司市场被抢占、利润被瓜分、前期运营与研发投入付诸东流。
本套 PHP 代码加密扩展及部署文档,旨在从底层对项目核心源码与业务逻辑进行高强度保护:
有效杜绝程序员、外包人员私自带走与倒卖核心源码资产;
搭建专属技术壁垒,防止同行轻易复刻商业模式与业务系统;
支持 Linux / Windows 双平台全适配,兼容 PHP 全系列新版本持续迭代;
支持机器绑定授权,从根源限制源码非法流转与异地滥用;
提供长期版本兼容维护能力,适配未来 PHP 大版本升级,一次部署、长久安心。
对于企业与独立开发者而言,源码加密不再是可选功能,而是守住核心资产、垄断赛道市场、规避盗版内卷的刚需基础设施,既保障自身生态稳定发展,也为商业项目筑起不可逾越的版权与经营护城河。
使用
Usage: fricc2 -o [target] [source]
fricc2 -o 加密后的文件 要加密的文件
前言
在软件开发与项目运营场景中,核心业务源码、底层逻辑架构是企业最珍贵的无形资产。
现实行业里普遍存在开发人员离职、外包团队私自备份、源码随意流转倒卖等乱象,一套成熟可落地的业务系统,往往因源码外泄被低价复制、跟风复刻,直接造成原创公司市场被抢占、利润被瓜分、前期运营与研发投入付诸东流。
本套 PHP 代码加密扩展及部署文档,旨在从底层对项目核心源码与业务逻辑进行高强度保护:
有效杜绝程序员、外包人员私自带走与倒卖核心源码资产;
搭建专属技术壁垒,防止同行轻易复刻商业模式与业务系统;
支持 Linux / Windows 双平台全适配,兼容 PHP 全系列新版本持续迭代;
支持机器绑定授权,从根源限制源码非法流转与异地滥用;
提供长期版本兼容维护能力,适配未来 PHP 大版本升级,一次部署、长久安心。
对于企业与独立开发者而言,源码加密不再是可选功能,而是守住核心资产、垄断赛道市场、规避盗版内卷的刚需基础设施,既保障自身生态稳定发展,也为商业项目筑起不可逾越的版权与经营护城河。
2部署PHP官方编译SDK,构建Windows平台扩展编译基础环境底座
2.1 下载PHP官方编译SDK
打开 PHP 官方 Windows 下载页:https://windows.php.net/download/
示例:

拉取windows版本的加密扩展源码,编译扩展
提示
该代码仓库是私有仓库,如果有需要,请与作者本人联系
git clone git@gitcode.com:YouHuPrivateResource/PHP-FRICC2-WINDOWS.git

