我有一个CoffeeScript文件,其中我正在编写一个与音频播放器交互的类,但由于某种原因,我无法让它在我的Rails应用程序中的另一个coffeeScript文件中很好地播放.
player.coffee:
window.Player = ->
constructor: (@player_id = "player") ->
jw = {
'flashplayer':"<%= asset_path('player.swf') %>"
'controlbar': 'top'
'autostart': 'false'
'width':'400'
'height':'49'
'playlist': '[]'
'skin':"<%= asset_path('awardfm.zip') %>"
'dock':'false'
'wmode':'transparent'
}
jwplayer(@player_id).setup(jw);
play: (track_data) ->
console.log track_data
Run Code Online (Sandbox Code Playgroud)
player_interactions.coffee
$ ->
jw = window.Player "player" || {}
$('.play').click ->
jw.play('test')
Run Code Online (Sandbox Code Playgroud)
我一直收到这个错误:
Uncaught ReferenceError: Player is not defined
它现在使用上面的代码示例
这是我的代码:
var source;
source = $.getJSON(url, function(json) {
return console.log(json);
});
Run Code Online (Sandbox Code Playgroud)
以上是返回完整的jQuery对象与我请求的JSON.响应看起来像这样:
abort: function ( statusText ) {
always: function () {
complete: function () {
done: function () {
error: function () {
fail: function () {
getAllResponseHeaders: function () {
getResponseHeader: function ( key ) {
isRejected: function () {
isResolved: function () {
overrideMimeType: function ( type ) {
pipe: function ( fnDone, fnFail ) {
promise: function ( obj ) {
readyState: 4
responseText: "{'Hello':'World'}"
setRequestHeader: …Run Code Online (Sandbox Code Playgroud) 我正在编写一个脚本,允许管理员为用户分配多种语言.
我的多选工作方式如下:
<%= fields_for :users_languages do |u| %>
<div class="field">
<%= @lang_list.inspect %>
<%= u.label :Assign_Languages %><br />
<%= select_tag :language_id, options_for_select(Language.all.collect {|lang| [lang.english, lang.id]}),:multiple => true, :prompt => 'Select Language' %>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)
但是当我进入编辑用户时,他们的语言没有显示为自动选择.我该怎么做呢?
无论如何使用jQuery与DOM进行交互,当用户将鼠标悬停在div上时,会出现一个菜单,但当它们悬停在该父级内的特定子元素上时,没有任何反应?
代码到目前为止
$('#player_area:not(< #player_links)').live("mouseenter", function() {
return $('#album_tracks').slideDown(200);
}).live("mouseleave", function() {
return $('#album_tracks').hide();
});
Run Code Online (Sandbox Code Playgroud) 我正在编写一个脚本,该脚本应根据日期范围确定年度的"季节":
例如:
January 1 - April 1: Winter
April 2 - June 30: Spring
July 1 - September 31: Summer
October 1 - December 31: Fall
Run Code Online (Sandbox Code Playgroud)
我不确定如何做到这一点的最佳方式(或最好的红宝石方式).其他人遇到如何做到这一点?
这是我的测试代码:
require 'spec_helper'
describe Classroom, focus: true do
let(:user) { build_stubbed(:user) }
describe "associations" do
it { should belong_to(:user) }
end
describe "validations" do
it { should validate_presence_of(:user) }
it { should validate_uniqueness_of(:name).scoped_to(:user_id) }
context "should create a unique classroom per user" do
before(:each) do
@class = build_stubbed(:classroom, name: "Hello World", user: user)
@class2 = build_stubbed(:classroom, name: "Hello World", user: user)
end
it "should not create the second classroom" do
@class2.should have(1).errors_on(:name)
end
end
end
describe "instance methods" do
before(:each) …Run Code Online (Sandbox Code Playgroud) 这是我的标记:
<div class="hidden-md" id="mobile-info">
<p class="text-center">
<a href="#shopperExperience" class="btn btn-primary switch-chart" data-show-tip="pre-store-preparation" data-chart-title="Consumer Takes Us Through a Shopping Experience" data-toggle="collapse" aria-expanded="false" aria-controls="shopperExperience" data-parent="#mobile-info">Shopper Experience</a>
<a href="#productLifeCycle" class="btn btn-primary switch-chart" data-show-tip="growth-over-time" data-chart-title="Understanding the Lifecycle of a Product or Service" data-toggle="collapse" aria-expanded="false" aria-controls="productLifeCycle" data-parent="#mobile-info">Product/Service Lifecycle</a>
</p>
<div id="shopperExperience" class="collapse">
<%= render 'shared/shopper_exp_mobile_tips' %>
</div>
<div id="productLifeCycle" class="collapse">
<%= render 'shared/product_lifecycle_mobile_tips' %>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
因此,基本上当点击其中一个按钮时,其他区域需要切换,但我无法弄清楚如何使其工作
下面的代码获取一个值,如果值是basestring,则返回它.如果该值不是basestring,则将其转换为字符串,但如果值为None,则返回空字符串.
有更多的Pythonic方式吗?
lambda value: value if isinstance(value, basestring) else str(value) if value is not None else ""
Run Code Online (Sandbox Code Playgroud) 如果我有以下变量:
x = 100.0
y = "100.0"
Run Code Online (Sandbox Code Playgroud)
我想将其转换y为任何类型x,但尝试通过lambda进行转换。
我有一个 ES6 模块,我正在尝试为其编写测试,用于前端 React/Redux 应用程序。
这是在我的测试中困扰我的模块部分:
import 'aws-sdk/dist/aws-sdk';
import Bluebird from 'bluebird';
const AWS = window.AWS;
Run Code Online (Sandbox Code Playgroud)
这是我的测试的开始:
import chai from 'chai';
import { expect } from 'chai';
import chaiAsPromised from 'chai-as-promised';
import sinon from 'sinon';
chai.use(chaiAsPromised);
describe("S3Gateway", () => {
let awsStub;
let sandbox;
let writeObject;
beforeEach(() => {
sandbox = sinon.sandbox.create();
writeObject = require('../../../app/lib/aws/s3gateway').writeObject;
awsStub = sinon.stub().returns({
S3: sinon.stub().returns({
putObject: sinon.spy()
})
});
sandbox.stub(window, 'AWS', awsStub);
});
Run Code Online (Sandbox Code Playgroud)
我在终端窗口中运行 mocha 时不断出现在标准输出中的错误是:
$ mocha test/lib/aws/s3gateway.js --compilers js:babel-core/register
S3Gateway
1) "before each" …Run Code Online (Sandbox Code Playgroud)