전체 소스를 https://github.com/ericgorr/myproject.git에 cascading_datasource 앱과 함께 배치했습니다. 단일 개체를 포함하는 SC.DataSource 설정
나는 다음 코드 item_model.js 있습니다CascadingDatasource.Item = SC.Record.extend(
{
name: SC.Record.attr(String),
ph: SC.Record.attr(String)
});
CascadingDatasource.Item.itemQuery = SC.Query.remote(CascadingDatasource.Item, { targetDataSource: 'itemDataSource' });
내 data_source.js 것은 :
sc_require('data_sources/itemDataSource');
CascadingDatasource.dataSource = SC.CascadeDataSource.create(
{
dataSources: ['itemDataSource'],
itemDataSource: CascadingDatasource.itemDataSource,
});
내 itemController.js은 다음과 같습니다
CascadingDatasource.itemController = SC.ObjectController.create({
});
내 itemDataSource .js는 :
sc_require('models/item_model');
CascadingDatasource.itemDataSource = SC.DataSource.create(
{
fetch: function(store, query)
{
var handled = false,
itemRecord;
if (query.recordType === CascadingDatasource.Item && query.targetDataSource === 'itemDataSource')
{
CascadingDatasource.store.loadRecord(CascadingDatasource.Item, {
name: 'the name',
ph: 'the phone number'
});
var theRecords = CascadingDatasource.store.recordsFor(CascadingDatasource.Item);
// Indicate that we took this request.
handled = true;
}
return handled;
}
});
키가 누락되었습니다.
CascadingDatasource.ReadyState = SC.State.extend({
enterState: function()
{
CascadingDatasource.itemController.set('content', CascadingDatasource.store.find(CascadingDatasource.Item.itemQuery));
CascadingDatasource.getPath('mainPage.mainPane').append();
},
exitState: function()
{
CascadingDatasource.getPath('mainPage.mainPane').remove();
}
});
나는 다음과 SC.LabelView이 있습니다 :
인 나는이 데이터 소스가 단지 하나의 객체를 포함 할,하지만 난 그것을 내용내 ready_state.js을 반환하는 방법을 잘 모르겠습니다
CascadingDatasource.store.find(CascadingDatasource.Item.itemQuery)
어떤을 반환하지 않습니다 :
valueBinding: SC.Binding.oneWay('CascadingDatasource.itemController.name')
다시 말하지만, 어떤 문제가 있다는 것입니다 것으로 보인다 내용 및 나는 왜 확실하지 않다.
모든 것이 제대로 작동하면 CascadingDatasource.itemController에 보관되는 결과의 '이름'및 'ph'속성에 바인딩되어야하는 기본 페이지의 SC.LabelView가 있습니다. 그러나 현재 기본 페이지는 비어 있습니다.
현재 Chrome 콘솔에 오류가 표시되지 않습니다.
완벽. 고맙습니다. github 소스를 업데이트합니다. – ericg