Skip to content

Commit cc6cce5

Browse files
committed
compuye cache keys
1 parent 72d3b79 commit cc6cce5

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

lib/view_component/cacheable.rb

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ module ViewComponent::Cacheable
1212
def view_cache_dependencies
1313
return if __vc_cache_dependencies.blank? || __vc_cache_dependencies.none? || __vc_cache_dependencies.nil?
1414

15-
retrieve_cache_key(__vc_cache_dependencies)
15+
computed_view_cache_dependencies = __vc_cache_dependencies.map { |dep| if respond_to?(dep) then public_send(dep) end }
16+
retrieve_cache_key(computed_view_cache_dependencies)
1617
end
1718

1819
# Render component from cache if possible
@@ -35,8 +36,8 @@ def retrieve_cache_key(key)
3536
when key.respond_to?(:cache_key_with_version) then key.cache_key_with_version
3637
when key.respond_to?(:cache_key) then key.cache_key
3738
when key.is_a?(Array) then key.map { |element| retrieve_cache_key(element) }.to_param
38-
when key.respond_to?(:to_a) then retrieve_cache_key(key.to_a)
39-
when respond_to?(key) then public_send(key).to_param
39+
when key.respond_to?(:to_a) then retrieve_cache_key(key.to_a)
40+
else key.to_param
4041
end.to_s
4142
end
4243
end

0 commit comments

Comments
 (0)