Shopify - 自动添加javascript到模板

时间:2016-03-09 13:58:36

标签: shopify

是否可以自动将一些js库添加到模板<head&gt;应用安装期间的部分?

鉴于我:

  1. 已下载此repo:https://github.com/Shopify/shopify_app
  2. 已修改config/initializers/shopify_app.rb并添加了此行config.scope = "read_orders, read_products, read_themes, write_themes"
  3. 将此行添加到控制器:ShopifyAPI::Asset.create(key: 'assets/angular.js', src: 'https://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.js') 其中angular.js是我的图书馆。
  4. 我可以在模板中使用angular,但是我必须在<head>部分添加此代码{{ 'angular.js' | asset_url | script_tag }}。 我可以在应用安装期间自动添加此代码吗?

1 个答案:

答案 0 :(得分:1)

config/initializers/shopify_app.rb下,您必须向csope参数添加您需要的权限。 config.scope = "read_orders, read_products, read_themes, write_themes, write_script_tags, read_script_tags"
在这种情况下,我们需要write_script_tags。之后,您必须从cotroller添加一些脚本,例如:

st = ShopifyAPI::ScriptTag.new(:src => "https://rawgit.com/someurl/10a5bf06d1b77a871426/raw/40a5c536453783d8b2b5ec3705ec13688bd3407c/widget.js", :event => "onload")
st.save

您的js文件可能如下所示:

  (function () {
    'use strict';

    var matches = document.getElementsByTagName("someTag")[0];
    console.log(matches);

  }());