gpt4 book ai didi

javascript - Ember.js 项目 - 类型错误 : session is undefined

转载 作者:行者123 更新时间:2023-12-03 06:41:57 24 4
gpt4 key购买 nike

我正在尝试运行一个 Ember 项目,我必须升级它的软件包,但现在遇到了弃用问题。

我当前的问题是,当我按“登录”时,当我在 Firefox 中打开开发者控制台时,会看到一条 TypeError: session is undefined 消息。

我对 Ember 真的一无所知,所以据我所知,有一个基于小 javascript 文件的 MCR 架构的构建 javascript 文件。

这是最重要的部分:

define('genesis/controllers/login', ['exports', 'ember'], function (exports, _ember) {
exports['default'] = _ember['default'].Controller.extend({
loginMessage: "",
actions: {
authenticate: function authenticate() {
var credentials = this.getProperties('identification', 'password'),
authenticator = 'simple-auth-authenticator:jwt';
this.set("loginMessage", "");
var session = this.get('session');
session.authenticate(authenticator, credentials);
}
}
});
});

这是它所基于的小一个:

模板/login.js

import Ember from 'ember';


export default Ember.Controller.extend({
loginMessage: "",
actions: {
authenticate: function() {
var credentials = this.getProperties('identification', 'password'),
authenticator = 'simple-auth-authenticator:jwt';
this.set("loginMessage", "");
var session = this.get('session');
session.authenticate(authenticator, credentials);
}
}
});

由于弃用,我不得不将 Ember.ObjectController.extend 更改为 Ember.Controller.extend

最佳答案

假设session是一项服务,您需要将其注入(inject) Controller 才能使用它。如果不注入(inject),this.get('session') 将返回未定义。

检查this documentation有关依赖注入(inject)的更多详细信息。

关于javascript - Ember.js 项目 - 类型错误 : session is undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37915191/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com