我正在使用reactjs,并且在尝试显示json数据时(无论是来自文件还是服务器)似乎无法阻止此错误:
Uncaught TypeError: this.props.data.map is not a function
Run Code Online (Sandbox Code Playgroud)
我看过:
抛出"TypeError:this.props.data.map不是函数"的反应代码
React.js this.props.data.map()不是函数
这些都没有帮助我解决问题.在我的页面加载之后,我可以验证this.data.props没有未定义(并且确实有一个等价于json对象的值 - 可以调用window.foo),所以看起来它没有及时加载它被调用时ConversationList.如何确保该map方法正在处理json数据而不是undefined变量?
var converter = new Showdown.converter();
var Conversation = React.createClass({
render: function() {
var rawMarkup = converter.makeHtml(this.props.children.toString());
return (
<div className="conversation panel panel-default">
<div className="panel-heading">
<h3 className="panel-title">
{this.props.id}
{this.props.last_message_snippet}
{this.props.other_user_id}
</h3>
</div>
<div className="panel-body">
<span dangerouslySetInnerHTML={{__html: rawMarkup}} />
</div>
</div>
);
}
});
var ConversationList = React.createClass({
render: function() {
window.foo = this.props.data;
var conversationNodes = this.props.data.map(function(conversation, index) {
return …Run Code Online (Sandbox Code Playgroud) 您需要设置HOMEBREW_GITHUB_API_TOKEN为自制,避免速率限制,但你怎么把它添加到自制的配置?
LinkedIn最近更改了他们的API,要求第三方更明确地说明他们要求的信息.为了访问用户过去的工作历史和omniauth教育,您必须传递r_fullprofile权限令牌(之前,您不必对过去的工作或教育数据提出具体要求).要访问用户的电子邮件地址,您需要传递r_emailaddress权限令牌.在有人要求之前,我正在使用新的LinkedIn API密钥(旧密钥不受最近更改的影响).
该omniauth,LinkedIn宝石最近进行了更新,以考虑LinkedIn的权限更改,但我仍然有通过这个新的范围参数通过问题所有的部分认证流程.我按照omniauth-linkedin自述文件中提供的说明创建我的config/omniauth.rb文件:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :linkedin, ENV['LINKEDIN_KEY'], ENV['LINKEDIN_SECRET'],
:scope => 'r_fullprofile,r_emailaddress', :fields => ['id', 'email-address', 'first-name', 'last-name', 'headline', 'industry', 'picture-url', 'public-profile-url', 'location', 'positions']
end
Run Code Online (Sandbox Code Playgroud)
范围似乎成功通过身份验证的第一部分,在下面的第一个屏幕截图中可见(您的完整个人资料...您的电子邮件地址):

但是,在用户输入凭据后,范围似乎丢失,并且仅传输默认的"您的个人资料概述"字段:

非常坚持这一点,可以真正使用一些帮助,因为我需要为我的用户提供完整的个人资料和教育数据.如果我需要提供我的auth_controller代码,请告诉我.谢谢.
我一辈子都无法弄清楚如何让Jackd在Docker容器中以实时优先级运行。我的目标是在jackd / gstreamer的帮助下使用webrtc在Internet上获得SuperCollider音频流,并且我相信我需要为jackd启用实时调度,以便SuperCollider使用它(这可能是一个红色的鲱鱼,也许SuperCollider不会这样做)不需要实时Jackd,但我仍然想尝试此路径)。
我的主机(运行macOS 10.13.6的2014 MacBook Air)没有成功,但我也尝试在运行于64位Amazon Linux / 2.12.16的AWS Docker beantalk应用程序上构建映像并运行容器。
这是带有dockerfile和一些更多详细信息/错误日志的自述文件的回购链接:https : //github.com/osetinsky/pulse-streamer/tree/supercollider-example/examples/supercollider
我已经花了数小时阅读人们遇到的类似问题,并尝试进行以下操作:
rtprio并memlock在各种limit.conf文件中使用适当的用户组在各个目录中进行设置:http : //jackaudio.org/faq/linux_rt_config.html最后一种方法似乎很有希望,但是在我运行时失败了:
docker run --privileged --ulimit rtprio=99 --ulimit memlock=800000000 --cpu-rt-runtime=950000 --volume=/dev/shm:/dev/shm:rw --user=1000 -it jack-sc bash
docker: Error response from daemon: OCI runtime create failed:
container_linux.go:345: starting container process caused
"process_linux.go:281: applying cgroup configuration for process caused
\"failed to write …Run Code Online (Sandbox Code Playgroud) 我已经阅读了许多其他相关问题,但是无法让这个宝石工作:
https://github.com/tsechingho/chosen-rails
正如README所说,我有
-included *= require chosen in my application.css
-included //= require chosen-jquery in my application.js
Run Code Online (Sandbox Code Playgroud)
另外,我尝试将followin添加到我的application.js文件底部:
jQuery(function($){
$('.chzn-select').chosen();
});
Run Code Online (Sandbox Code Playgroud)
我也换成.chzn-select与#user_education_ids和#user_school_ids基于我的模型和视图:
<% @schools = Education.all.map { |e| [ e.school, e.school ] } %>
<%= select_tag "school_ids", options_for_select((@schools), params[:education_id]), { :include_blank => true, :multiple => true } %>
Run Code Online (Sandbox Code Playgroud)
我试过添加, :class=>'chzn-select'到最后:multiple => true,没有运气
(用户有很多教育,以及许多学校通过教育)
不知道为什么这给了我这么多麻烦,但确实如此.非常感谢帮助!
我有一个功能正常的模态链接,可以从我的视图中的某个页面点击:
<a href="#" data-toggle="modal" data-target="#manifesto-modal">Manifesto & Rules</a>
Run Code Online (Sandbox Code Playgroud)
除了可以在此页面上单击之外,我希望在重定向到此页面时默认显示它.我没有找到一个很好的方法来从控制器或其他方式编码,但无法想象它需要太多.感谢投入!
我有三个我想要相交的数组,但我想忽略那些空的数组.
这段代码看起来太冗长了.有更有效的方法吗?
if a.empty? && b.empty?
abc = c
elsif a.empty? && c.empty?
abc = b
elsif b.empty? && c.empty?
abc = a
elsif a.empty?
abc = b & c
elsif b.empty?
abc = a & c
elsif c.empty?
abc = a & b
else
abc = a & b & c
end
Run Code Online (Sandbox Code Playgroud) 在终端('irb')中启动交互式Ruby shell,可以继续无休止地打开irb子shell.这有什么意义?
我在我的网络应用程序搜索页面上使用了很好的Select2用于多个选择字段.人们可以按公司/行业/学校搜索人员.因为每个都有数百个可搜索的值,所以需要花费时间来加载正确的select2 css(大约1秒).在漂亮的select2字段显示之前,可以在闪烁中看到旧丑陋的选择字段.随附的两个屏幕截图显示了转换.
这是我的观看代码:
<%= form_tag('', :method => :get) do %>
<div class="row-fluid">
<div class="span4">
<label>What industries have they worked in?</label>
<%= select_tag "industry_ids", options_for_select((@visible_industries), params[:industry_ids]), { :placeholder => "Type to search...", :multiple => true, :id => "e3", :onchange => 'this.form.submit();' } %>
<%= hidden_field_tag :&, params[:industry_ids] %>
</div>
<div class="span4">
<label>What companies have they worked at?</label>
<%= select_tag "company_ids", options_for_select((@visible_companies), params[:company_ids]), { :placeholder => "Type to search...", :multiple => true, :onchange => 'this.form.submit();' } %>
<%= hidden_field_tag :&, …Run Code Online (Sandbox Code Playgroud) 附件是Chrome开发者工具在查看Google+ HTML时的屏幕截图.注意〜随机类名:

我在本地没有遇到错误,但在 Heroku 上。错误是:
'ActionView::Template::Error(nil:NilClass 的未定义方法 `each')'
“每个”指的是下面我的 User callback.html.erb 视图的 <% for i in @positions %> 行中 @position 中的每个 i:
<% for i in @positions %>
<strong>
<% begin %>
<%= @user.positions.find_by_id(i).title + " at " %>
<% rescue %>
<% end %>
<% begin %>
<%= @user.positions.find_by_id(i).company %>
<% rescue %>
<% end %>
</strong>
Run Code Online (Sandbox Code Playgroud)
这是我的身份验证控制器的相关部分(回调部分)
def callback
...
@user = current_user
...
#positions
for i in 0..(positions.count-1)
begin
@company_i = companies[i]['name']
rescue
end
begin
@title_i = positions[i]['title']
rescue …Run Code Online (Sandbox Code Playgroud)