首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用聚合物(1.0)与Rails (4)?

如何使用聚合物(1.0)与Rails (4)?
EN

Stack Overflow用户
提问于 2015-06-04 19:24:13
回答 4查看 3.2K关注 0票数 18

既然聚合物(1.0)已经“准备好了”,那么在Rails (4)上使用它的最佳方法是什么呢?

我读了很多书,我发现所有的解决方案都是不推荐的(例如使用Gems,比如:类聚合物-rails,emcee等等)。

我迷失了试图为这个项目创造一个良好的结构,以及包括所有聚合物组件的方法,我也不知道链轮是否能帮上忙。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-06-10 07:38:20

UPDATE (2015年6月16日):为polymer-rails发布了官方软件包。请参阅polymer-elements-rails,这是一个新的正式存储库,包括iron-paper-neon-elements

我将暂时保持这些分叉用于任何仍然将其设置为依赖项的人,但您将从使用官方存储库获得相同的功能和长时间的支持,因此,如果没有,我建议您切换。

聚合物导轨项目已经更新为1.0,但不幸的是,组件的gems还没有更新。我已经做了适当的叉子,以便在此期间有一些工作上的选择。

你的宝石档案应该有:

代码语言:javascript
复制
gem 'polymer-rails'
gem 'polymer-iron-rails', :git => "git://github.com/vsimonian/polymer-iron-rails.git"
gem 'polymer-paper-rails', :git => "git://github.com/vsimonian/polymer-paper-rails.git"
gem 'polymer-neon-rails', :git => "git://github.com/vsimonian/polymer-neon-rails.git"

然后运行bundle

app/assets/components/application.html.erb中,您设置了依赖项:

代码语言:javascript
复制
//= require polymer/polymer
//= require iron-ajax/iron-ajax
//= require iron-input/iron-input
.....

app/assets/javascripts/application.js应包括:

代码语言:javascript
复制
//= require webcomponentsjs/webcomponents-lite

您的.bowerrc应该有第三方组件目录集:

代码语言:javascript
复制
{
  "directory": "vendor/assets/components"
}
票数 10
EN

Stack Overflow用户

发布于 2015-06-08 17:29:45

您可能会发现Rails资产是将其添加到应用程序中的一个很好的方法。

Rails资产鲍尔的代理,用于从现有的前端Javascript库中生成gems,并通过bundler/您的Gemfile代表您安装它们。这就打破了你对创业板包保持前端Javascript库最新的依赖。

基本上,您可以将其添加到Gemfile中:

代码语言:javascript
复制
source 'https://rails-assets.org' do
  gem 'rails-assets-polymer'
end

然后运行bundle install (确保邦德勒版本为1.8.4或更高版本,否则它将不能工作w/上述片段)

最后,在//= require polymer的适当位置添加application.js。

票数 0
EN

Stack Overflow用户

发布于 2015-06-08 17:56:00

几个月前我试过用聚合物,希望这能帮助你得到一个想法。

GemFile

代码语言:javascript
复制
gem 'rails', '4.0.2'
gem 'polymer-rails'
gem 'polymer-core-rails'
gem 'polymer-paper-rails'

app/assets/components/application.html.erb

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

app/assets/javascripts/application.js

代码语言:javascript
复制
//= require polymer/platform

显示具有以下内容的.bowerrc文件

代码语言:javascript
复制
{
 "directory": "vendor/assets/components"
}

用polymar呈现示例视图

代码语言:javascript
复制
     <style>
         google-map {
             display: block;
             height: 600px;
         }
     </style>

     <h1>Polymer Rails Example</h1>

     <google-map latitude="37.77493" longitude="-122.41942" fitToMarkers>
       <google-map-marker latitude="37.779" longitude="-122.3892"  draggable="true" title="Go Giants!"></google-map-marker>
       <google-map-marker latitude="37.777" longitude="-122.38911"></google-map-marker>
     </google-map>

     <google-map disableDefaultUI showCenterMarker zoom="15"></google-map>
     <script>
         var map = document.querySelector('google-map');
         map.latitude = 37.77493;
         map.longitude = -122.41942;
         map.addEventListener('google-map-ready', function(e) {
             alert('Map loaded!');
         });
     </script>

您可以使用ploymer查看我的项目,这不是一个很好的编码,但是您仍然可以从这个提交Github储存库中获得一个想法。

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

https://stackoverflow.com/questions/30652400

复制
相关文章

相似问题

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