是否可以自动将一些js库添加到模板<head
&gt;应用安装期间的部分?
鉴于我:
config/initializers/shopify_app.rb
并添加了此行config.scope = "read_orders, read_products, read_themes, write_themes"
ShopifyAPI::Asset.create(key: 'assets/angular.js', src: 'https://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.js')
其中angular.js
是我的图书馆。我可以在模板中使用angular,但是我必须在<head>
部分添加此代码{{ 'angular.js' | asset_url | script_tag }}
。
我可以在应用安装期间自动添加此代码吗?
答案 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);
}());