Shopify - 自动添加 javascript 到模板 <head>
Shopify - add automatically javascript to template <head>
是否可以在应用程序安装期间自动将一些 js 库添加到模板 <head
> 部分?
鉴于我:
- 下载此存储库:https://github.com/Shopify/shopify_app
- 编辑
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 }}
。
我可以在应用程序安装过程中自动添加此代码吗?
在 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);
}());
是否可以在应用程序安装期间自动将一些 js 库添加到模板 <head
> 部分?
鉴于我:
- 下载此存储库:https://github.com/Shopify/shopify_app
- 编辑
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 }}
。
我可以在应用程序安装过程中自动添加此代码吗?
在 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);
}());