首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从html.erb Rails 5内部调用JS脚本

从html.erb Rails 5内部调用JS脚本
EN

Stack Overflow用户
提问于 2021-09-21 17:39:17
回答 1查看 31关注 0票数 0

我有一个Rails 5应用程序,在index.html.erb中我想调用一个JS脚本。

好的,我正在使用一个CDN,它工作得很好,但是我想下载两个文件cookieconsent.jscookieconsent.css并在本地使用它们。

代码语言:javascript
复制
<script src="https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@v2.5.1/dist/cookieconsent.js"></script>
  <script>
      var cookieconsent = initCookieConsent();

      cookieconsent.run({
          current_lang : 'en',
          theme_css : 'https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@v2.5.1/dist/cookieconsent.css',

          languages : {
              en : {
                  consent_modal : {
                      title :  "I use cookies",

                      primary_btn: {
                          text: 'Accept',
                          role: 'accept_all'  //'accept_selected' or 'accept_all'
                      },
                      secondary_btn: {
                          text : 'Reject',
                          role : 'accept_necessary'   //'settings' or 'accept_necessary'
                      }
                  }
              }
          }
      });
  </script>

我的问题是,无论我把文件放在哪里,应用程序都找不到它们。最初,我将它们放在app/assets/javascripts/cookieconsent.jsapp/assets/stylesheets/cookieconsent.css中,然后像这样使用它:

代码语言:javascript
复制
<script src="app/assets/javascripts/cookieconsent.js"></script>
  <script>
      var cookieconsent = initCookieConsent();

      cookieconsent.run({
          current_lang : 'en',
          theme_css : 'app/assets/stylesheets/cookieconsent.css',

          languages : {
              en : {
                  consent_modal : {
                      title :  "I use cookies",

                      primary_btn: {
                          text: 'Accept',
                          role: 'accept_all'  //'accept_selected' or 'accept_all'
                      },
                      secondary_btn: {
                          text : 'Reject',
                          role : 'accept_necessary'   //'settings' or 'accept_necessary'
                      }
                  }
              }
          }
      });
  </script>

但它找不到任何文件。我应该把它们放在哪里?我还需要配置其他东西吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-21 18:30:40

如果没有看到您的application.js文件,我将执行以下操作:

从视图模板中删除第一行:

代码语言:javascript
复制
<script src="app/assets/javascripts/cookieconsent.js"></script>

然后确保在app/assets/javascripts/application.js中“需要”它。

代码语言:javascript
复制
//= require cookieconsent

第三,用<%= asset_path('cookieconsent.css') %>替换cookieconsent.css的硬编码路径

完成此操作后,您可以将JavaScript代码片段放在您喜欢的任何位置,并且不会出现任何控制台错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69273286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档