在Rails 6中,不再支持使用.js.erb文件进行渲染。这是因为Rails 6引入了Webpacker作为默认的JavaScript打包工具,它使用了ES6模块化的方式来管理和加载JavaScript代码。
在Rails 6中,推荐使用Webpacker来处理JavaScript代码。Webpacker允许你使用现代的JavaScript语法,如ES6模块化、箭头函数等,并且可以方便地集成各种前端框架和库。
如果你想在Rails 6中渲染JavaScript代码,可以使用.js文件来代替.js.erb文件。你可以将JavaScript代码放在app/javascript目录下,并通过Webpacker进行打包和加载。
对于需要在JavaScript中使用Rails的视图变量或路由等信息的情况,可以使用data属性将这些数据传递给JavaScript代码。例如,在视图中可以这样定义一个data属性:
<%= content_tag :div, '', data: { my_variable: @my_variable } %>
然后,在JavaScript代码中可以通过element.dataset
来获取这个data属性的值:
const myVariable = document.querySelector('div').dataset.myVariable;
对于需要在Rails视图中执行一些动态操作的情况,可以考虑使用Ajax请求来获取数据并更新页面内容。
总结起来,Rails 6不再支持使用.js.erb文件进行渲染,推荐使用Webpacker来处理JavaScript代码,并通过data属性传递数据给JavaScript代码。
没有搜到相关的文章