比如我有个表单
点一下按钮添加在 item 里添加(减少)一项。
第一反应是用 JavaScript 不过感觉里面写一坨 JavaScript 感觉好不优雅。。。。
目前在按钮里添加一个路由连接传递一个参数,重新渲染这个页面来实现的
accepts_nested_attributes_for 了解一下
这个我用了。。。我指的是在 view 层来动态的添加表单项。在视图上的实现
cocoon
server side js? http://guides.rubyonrails.org/working_with_javascript_in_rails.html#server-side-concerns
把 js 写的优雅点
你可以分开来写啊,不管是用 asset pipeline 还是 webpacker,单独的 js 文件或者 coffee 文件
要求不高 cocoon 很好,不过需要跟 webpacker 配合的话,需要用别人给他包的 npm package,作者表示过自己不懂
每次渲染开销多大的有 js 为啥不用
使用 cocoon 的时候注意下,他是直接在页面显示的时候就把 subform 的信息加载进来了,也意味着,如果你在 subform 上有 after_initialize 的话 它只生效一次 (随机,时间戳 都是在页面生成的时候出现,再添加 sub model 时就只是加载 js 里的信息 )