Хочу получить доступ к переменной app. Как это сделать?
app.js
'use strict';
import $ from 'jquery';
import Application from './application';
const App = new Application();
/**
* Конфигурация Ajax по умолчанию.
*/
$.ajaxSetup({
cache: false,
contentType: 'application/json',
dataType: 'json',
statusCode: {}
});
exports.app = App;
/**
* Аутентификация пользователя и старт приложения.
*/
App.session.checkAuth({
complete: function() {
App.start();
}
});
Импортирую Application.Martionette.
Экспортирую это приложение как app.
Application.Marionette object
'use strict';
import Backbone from 'backbone';
import $ from 'jquery';
import {Application} from 'marionette';
import SessionModel from 'models/sessionModel';
import Router from './router';
import RouterController from './routerController';
export default Application.extend({
channelName: 'app',
region: '#main-content',
/**
* Инициализация приложения.
*/
initialize: function() {
this.session = new SessionModel();
},
/**
* Старт приложения
*/
onStart: function() {
this.router = new Router({ controller: new RouterController()
Backbone.history.start();
},
});
Как видно выше, при старте приложения я регистрирую роуты. В главном роуте homeController я хочу получить данные о сессии пользователя. То есть: app.session ... Как я могу получить доступ к app как к переменнной?
Использую webpack 2.
elixir(function(mix) {
mix.less('index.less').less('app.less');
mix.webpack(['src/app.js'], {
output: {
path : '/public',
publicPath : '/js/',
filename : '[name].js'
},
module: {
loaders: [
{ // babel загрузчик. Преобразую из es6 в es5 для старых браузеров.
test: /\.js$/,
exclude: /(node_modules|bower_components)/,
// babel?optional[]=runtime
loader: 'babel', // 'babel-loader' is also a valid name to reference
query: {
presets: ['es2015']
}
},
{
test: /\.hbs/,
loader: "handlebars-template-loader"
},
]
},
resolve: {
modulesDirectories: ['node_modules'],
extensions: ['', '.js'],
alias: {
'marionette' : 'backbone.marionette',
'underscore' : 'lodash',
'module-exports' : '',
'backbone.wreqr' : path.resolve(nodeModulesPath, 'backbone.marionette', 'node_modules', 'backbone.wreqr'),
'backbone.babysitter' : path.resolve(nodeModulesPath, 'backbone.marionette', 'node_modules', 'backbone.babysitter'),
'backbone' : 'backbone',
'handlebars' : 'handlebars/runtime.js',
'src' : path.resolve(srcPath),
'models' : path.resolve(srcPath, 'models'),
'controllers' : path.resolve(srcPath, 'controllers'),
'modules' : path.resolve(srcPath, 'modules'),
'helpers' : path.resolve(srcPath, 'helpers'),
'views' : path.resolve(srcPath, 'resources', 'views'),
'templates' : path.resolve(srcPath, 'resources', 'templates'),
}
},
});
mix.version(['js/main.js', 'css/index.css', 'css/app.css']);
});
Виртуальный выделенный сервер (VDS) становится отличным выбором
Не получается работать с GMail APIКаждый раз GMail не может быть прочитано и является пустым свойством