Ember.js 使用 Liquid Fire 时出现错误 "Cannot read property 'container' of undefined"
Ember.js error "Cannot read property 'container' of undefined" when using Liquid Fire
我是前端开发的初学者,正在尝试将 Ember.js 用于我的项目。我在 EmberConf 2015 上偶然发现了 a great talk by Edward Faulkner about Liquid Fire。它看起来非常容易申请,所以我决定试一试。
我的应用程序使用 Ember 和 Ember-Data Canary 通过 ember-cli 0.2.0.
应用程序的结构有点像这样:
application.hbs
\users
\user
work.hbs
profile.hbs
...
user.hbs
router.js 文件中负责此操作的部分是:
this.resource('users', function (){
this.resource('users.user', { path: '/:user_id' }, function () {
this.route('work');
this.route('profile');
...
});
});
在我使用 npm install --save-dev liquid-fire
安装插件后,我将 user.hbs 文件中的 {{outlet}} 替换为 {{liquid-outlet}}并添加了一个包含一些简单转换数据的 transitions.js 文件:
export default function () {
this.transition(
this.toRoute('users.user'),
this.use('fade')
);
}
但是当我导航到用户页面时,我收到 javascript 错误:
Uncaught TypeError: Cannot read property 'container' of undefined
源自 liquid-outlet.js 文件,第 15 行:
var View = this.container.lookupFactory("view:liquid-outlet");
我不知道我做错了什么。我的 {{liquid-outlet}} 似乎有什么地方放错了地方之类的,但我试过将它移到别处,但没有成功。一旦我导航到其中包含 {{liquid-outlet}} 的模板,我就会收到同样的错误。请帮忙。
谢谢,
奥列格
此问题已在 liquid fire 的 master 分支中修复。你现在可以通过从 git 中拉出一个可用的构建:
npm install ef4/liquid-fire --save-dev
下一个版本当然也会包含修复。
检查此 git 中心问题线程以获取更新:https://github.com/ef4/liquid-fire/issues/190
我是前端开发的初学者,正在尝试将 Ember.js 用于我的项目。我在 EmberConf 2015 上偶然发现了 a great talk by Edward Faulkner about Liquid Fire。它看起来非常容易申请,所以我决定试一试。
我的应用程序使用 Ember 和 Ember-Data Canary 通过 ember-cli 0.2.0.
应用程序的结构有点像这样:
application.hbs
\users
\user
work.hbs
profile.hbs
...
user.hbs
router.js 文件中负责此操作的部分是:
this.resource('users', function (){
this.resource('users.user', { path: '/:user_id' }, function () {
this.route('work');
this.route('profile');
...
});
});
在我使用 npm install --save-dev liquid-fire
安装插件后,我将 user.hbs 文件中的 {{outlet}} 替换为 {{liquid-outlet}}并添加了一个包含一些简单转换数据的 transitions.js 文件:
export default function () {
this.transition(
this.toRoute('users.user'),
this.use('fade')
);
}
但是当我导航到用户页面时,我收到 javascript 错误:
Uncaught TypeError: Cannot read property 'container' of undefined
源自 liquid-outlet.js 文件,第 15 行:
var View = this.container.lookupFactory("view:liquid-outlet");
我不知道我做错了什么。我的 {{liquid-outlet}} 似乎有什么地方放错了地方之类的,但我试过将它移到别处,但没有成功。一旦我导航到其中包含 {{liquid-outlet}} 的模板,我就会收到同样的错误。请帮忙。
谢谢, 奥列格
此问题已在 liquid fire 的 master 分支中修复。你现在可以通过从 git 中拉出一个可用的构建:
npm install ef4/liquid-fire --save-dev
下一个版本当然也会包含修复。
检查此 git 中心问题线程以获取更新:https://github.com/ef4/liquid-fire/issues/190