Trigger中更新问题

在Trigger(Before)中更新的时候按第一种方法,将要更新的放在select中是不会有效果的,因为List已经是另外一个集合了,不属于将要被更新数据的集合,这个时候是不会有效果的。错误原因及是重新查询了一次,但已是无关集合。此处选择第二种方法。如图:



 当然在trigger中用到的DML操作也非常多,比如:通过A对象的更新去更新B对象;数据验证操作等!
(未完待续)

### Vue 中使用 `trigger` 实现响应式新 在 Vue 3 的 Composition API 中,提供了低级别的工具函数 `triggerRef` 和 `trigger` 来手动触发响应式对象的新。这些工具主要用于特殊场景下的细粒度控制。 #### 使用 `triggerRef` 新由 `ref` 创建的对象 当需要手动触发由 `ref` 创建的响应式对象的新时,可以使用 `triggerRef` 函数。这尤其适用于新旧值相等但仍希望触发视图新的情况。 ```javascript import { ref, triggerRef } from 'vue'; const myRef = ref({ foo: 'bar' }); // 新 ref 的值 myRef.value.foo = 'baz'; // 手动触发triggerRef(myRef); ``` 这段代码中,尽管 `foo` 的值被改了,但由于其引用未变,Vue 默认不会触发新。此时调用 `triggerRef(myRef)` 可以强制通知观察者进行新[^1]。 #### 使用 `trigger` 新由 `reactive` 创建的对象 对于通过 `reactive` 创建的响应式对象,可以直接使用 `trigger` 函数来指定路径并触发相应依赖的新。这种方式加灵活,适合复杂的数据结构。 假设有一个嵌套的对象: ```javascript import { reactive, trigger } from 'vue'; const state = reactive({ user: { name: 'John', age: 30 } }); // 改某个字段 state.user.age = 31; // 显式触发trigger(state, 'set', 'user.age'); ``` 这里的关键在于第三个参数指定了具体的键路径 `'user.age'`,确保只针对该部分的依赖进行新操作[^4]。 需要注意的是,虽然可以通过上述手段强行引发新,但在日常开发过程中应当谨慎使用此类方法。因为它们可能会破坏框架原有的优化机制——例如批量新策略[^2]。除非确实遇到特殊情况(如同步外部库的状态),否则建议遵循标准的数据绑定模式即可满足大部分需求。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值