引入
ts
import { initBeforeUnload } from 't-comm';
// 不支持 tree-shaking 的项目
import { initBeforeUnload} from 't-comm/lib/beforeunload/index';
// 只支持 ESM 的项目
import { initBeforeUnload} from 't-comm/es/beforeunload/index';
initBeforeUnload(checkDataCallback)
描述:
表单等数据变更时,提示用户是否确认离开当前页面
参数:
参数名 | 描述 |
---|---|
checkDataCallback | 可选,用于检查是否有未保存的数据变更,返回 true 则提示用户,返回 false 则不提示 |
返回:
一个数组,第一个元素是移除事件监听的函数,第二个元素是事件处理函数
示例
ts
const [removeBeforeUnload] = initBeforeUnload(() => {
return form.isDirty; // 假设 form.isDirty 表示表单是否有未保存的更改
});
// 在组件卸载或不再需要提示时调用
removeBeforeUnload();