Sprockets::Commoner 项目教程

Sprockets::Commoner 项目教程

sprockets-commonerUse Babel in Sprockets to compile JavaScript modules for the browser项目地址:https://gitcode.com/gh_mirrors/sp/sprockets-commoner

1. 项目的目录结构及介绍

Sprockets::Commoner 是一个用于 Rails 应用的 gem,它允许在 Sprockets 环境下进行 JavaScript 打包和 Babel 转换。以下是该项目的目录结构及其介绍:

sprockets-commoner/
├── bin/
│   └── js/
│       └── babel-plugin-sprockets-commoner-internal
├── lib/
│   └── sprockets/
│       ├── commoner/
│       │   ├── bundle.rb
│       │   ├── json_processor.rb
│       │   └── processor.rb
│       └── commoner.rb
├── test/
│   └── sprockets/
│       └── commoner/
├── .gitignore
├── .nvmrc
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── Gemfile
├── LICENSE.txt
├── README.md
├── Rakefile
├── circle.yml
└── sprockets-commoner.gemspec
  • bin/: 包含用于 Babel 插件的脚本。
  • lib/: 包含项目的主要代码,特别是 sprockets/commoner/ 目录下的文件,这些文件实现了 Commoner 的核心功能。
  • test/: 包含项目的测试文件。
  • .gitignore: 指定 Git 忽略的文件和目录。
  • .nvmrc: 指定 Node.js 版本。
  • CHANGELOG.md: 记录项目的变更历史。
  • CODE_OF_CONDUCT.md: 项目的代码行为准则。
  • Gemfile: 指定项目的依赖。
  • LICENSE.txt: 项目的许可证。
  • README.md: 项目的介绍和使用说明。
  • Rakefile: 包含 Rake 任务。
  • circle.yml: 用于 CircleCI 的配置文件。
  • sprockets-commoner.gemspec: 项目的 gemspec 文件。

2. 项目的启动文件介绍

项目的启动文件主要位于 lib/sprockets/commoner/ 目录下,其中 commoner.rb 是主要的启动文件。它负责注册后处理器和转换器,并启用 Babel 支持。

require 'sprockets'
require 'sprockets/commoner/json_processor'
require 'sprockets/commoner/processor'
require 'sprockets/commoner/bundle'

module Sprockets
  module Commoner
    def self.sprockets4
      @@sprockets4 ||= Gem::Version.new(Sprockets::VERSION) >= Gem::Version.new('4.0.0.beta')
    end
  end
end

Sprockets.register_postprocessor 'application/javascript', ::Sprockets::Commoner::Processor
Sprockets.register_transformer 'application/json', 'application/javascript', ::Sprockets::Commoner::JSONProcessor
Sprockets.register_bundle_metadata_reducer 'application/javascript', :commoner_enabled, false
Sprockets.register_bundle_metadata_reducer 'application/javascript', :commoner_required, Set.new
Sprockets.register_bundle_metadata_reducer 'application/javascript', :commoner_used_helpers, Set.new

3. 项目的配置文件介绍

项目的配置文件主要包括 Gemfilesprockets-commoner.gemspec

Gemfile

Gemfile 指定了项目的依赖,例如:

source 'https://rubygems.org'

gem 'sprockets', '~> 4.0'
gem 'babel-transpiler'

sprockets-commoner.gemspec

sprockets-commoner.gemspec 包含了 gem 的详细信息和依赖:

Gem::Specification.new do |spec|
  spec.name          = "sprockets-commoner"
  spec.version       = '0.1.0'
  spec.authors       = ["Shopify"]
  spec.summary       = "Enable JavaScript package management in Sprockets."
  spec.description   = "Sprockets::Commoner is a gem that enables JavaScript package

sprockets-commonerUse Babel in Sprockets to compile JavaScript modules for the browser项目地址:https://gitcode.com/gh_mirrors/sp/sprockets-commoner

  • 8
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

魏秦任

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值