小编l33*_*z3r的帖子

Rails 4 Assets使用多个清单文件进行预编译

我有一个rails 4应用程序.

我有3套清单文件,以便为我的应用程序分离逻辑.

这些文件是

application.js
backoffice.js
pos.js

application.css
backoffice.css
pos.css
Run Code Online (Sandbox Code Playgroud)

在我的布局文件中,我使用关联的javascript_link_tags引用这些资源

我已将以下内容添加到我的production.rb文件中(为了将这些文件包含在资产的预编译中):

config.assets.precompile += %w( backoffice.js pos.js pos.css backoffice.css )
Run Code Online (Sandbox Code Playgroud)

然后我运行rake资产:预编译,但它没有获取额外的文件.它只编译application.js和application.css清单.

在production.rb中,我有:

config.serve_static_assets = true
config.assets.compile = false
Run Code Online (Sandbox Code Playgroud)

任何想法?

谢谢

ruby-on-rails-4

15
推荐指数
1
解决办法
8872
查看次数

Ember.js app离线行为

我有一个使用ember-rails gem与rails应用程序交互的ember应用程序.

我想使用localStorage适配器来存储从服务器通过其余api下载产品的列表.

然后,如果应用程序处于脱机状态,则ember可以使用localStorage数据,而不是向rails app询问数据.

有没有办法做到这一点?

ember.js ember-data

5
推荐指数
1
解决办法
431
查看次数

Ember CLI测试助手

有人能指出我如何使用ember-cli实现测试助手的资源吗?

还是一个简单的解释?

我知道帮助程序进入test/helpers目录,但是如何将它们加载到集成测试中?

谢谢

ember.js ember-cli

5
推荐指数
1
解决办法
984
查看次数

在ember中保存模型时尝试调用loadedData

我一直在我的应用程序中收到此错误,但不知道是什么导致它.

每当我提交数据存储时它都会发生:

loadedData在状态rootState.loaded.updated.inFlight中尝试处理事件.调用未定义

任何人?

以下是导致它的代码:

var ts_setting;

ts_setting = Cluey.Setting.find(Cluey.SettingsKeyIDs.API_TIMESTAMP);

if (ts_setting.get('value') != null) {
  console.log("Found Timestamp");
} else {
  console.log("Creating Initial Timestamp...");
  ts_setting.set("id", Cluey.SettingsKeyIDs.API_TIMESTAMP);
  ts_setting.set("value", 0);
  Cluey.store.commit();
}
Run Code Online (Sandbox Code Playgroud)

编辑

我把它归结为导致错误的以下代码(用coffeescript编写).问题是,第一次运行代码时,当数据存储中的对象首次存在时,运行正常.当我在已包含具有指定id的记录的数据存储上运行代码时,会发生错误.这可能有助于您破译正在发生的事情.

ts_setting = Cluey.Setting.find(Cluey.SettingsKeyIDs.API_TIMESTAMP)
ts_setting.get('value')
ts_setting.set("id", Cluey.SettingsKeyIDs.API_TIMESTAMP)
ts_setting.set("value", 0)
Cluey.store.commit()
Run Code Online (Sandbox Code Playgroud)

编辑2

我在创建记录时遇到类似的问题:

ts_setting = Cluey.Setting.createRecord
    id: Cluey.SettingsKeyIDs.API_TIMESTAMP,
    value: 0

Cluey.store.commit()
Run Code Online (Sandbox Code Playgroud)

上面的代码给了我这个错误:

Uncaught Error: Attempted to handle event `loadedData` on <Cluey.Setting:ember327:1> while in state rootState.loaded.created.inFlight. Called with undefined
Run Code Online (Sandbox Code Playgroud)

编辑3

所以事实证明我@timestamp = ts_setting.get('value')在提交商店后正在调用,我认为这是导致问题,因为我试图从尚未保存的对象中获取一些数据.

ember.js ember-data

2
推荐指数
1
解决办法
1907
查看次数

标签 统计

ember.js ×3

ember-data ×2

ember-cli ×1

ruby-on-rails-4 ×1