What's New With 3.0
05/18/2023
New Features
Single File Components
Combine component logic and template in a single file using @startWire and @endWire markers.
<!-- wires/Counter.cfm -->
<cfscript>
// @startWire
data = {
"counter" = 0
};
function increment() {
data.counter += 1;
}
// @endWire
</cfscript>
<cfoutput>
<div>
<h2>Counter: #counter#</h2>
<button wire:click="increment">+</button>
</div>
</cfoutput>Module-Aware Components
Components can now be organized within ColdBox modules.
Enhancements
Removed cbValidation Dependency
CBWIRE no longer requires cbValidation, making it more lightweight.
Simplified Property Access
Templates now use direct property access instead of the args scope:
Performance Improvements
Skip unnecessary ColdBox view caching/lookups
Streamlined engine architecture
Removed
computedPropertiesProxyfor better performance
Bug Fixes
Fixed empty string/null values not passing to Livewire
Support full-path wire resolution (e.g.,
appMapping.wires.SomeComponent)Ensure data-updating actions trigger DOM updates
.see()/.dontSee()in tests now chain correctlyFix computed property overrides in component tests
Breaking Changes
Property Access
Computed Properties
Validation Constraints
Event Emission
Was this helpful?