Я пытаюсь написать свое первое модульное приложение, используя Ampersand.js, но у меня есть несколько проблем! Надеясь кто-то может мне точку в правильном направлении ...Маршрутизация модульного приложения с Ampersand.js?
Ok, так что я настроен Watchify
и Browserify
в мой HTML файл, чтобы создать bundled.js
файл, который будет перекомпилировать каждый раз, когда я внести изменения. Затем я хотел бы добавить амперсанд модульно ampersand-router
(установлен в терминале как npm install --save ampersand-router
указать все маршруты приложения Я хотел бы, чтобы обрабатывать и перенаправлять пользователей, если они попали на недоступный маршрут.
Проблема его не перенаправлять мой # маршруты, и я не могу понять, почему! Поскольку у меня нет сервера (или нужен один для этого проекта), я пытаюсь использовать маршрутизацию на основе #, и мне бы хотелось, чтобы он обрабатывал три маршрута, пустой маршрут (моя стартовая точка), gif/id
маршрут Л catch
маршрут, который будет перенаправлять к исходной точке
Так что моя файловая структура содержит router.js: -.
'use strict';
var AmpersandRouter = require('ampersand-router');
module.exports = AmpersandRouter.extend({
routes:{
'': 'gifs', //empty
'gif/:id': 'gif',
'catch': 'catch' //catch and redirect
},
gifs: function(){
console.log('gifs page');
},
gif: function(id){
console.log('gif page', id);
},
'catch': function(){
this.redirectTo('');
}
});
и app.js файл: -
var Router = require('./router.js');
window.app = {
init: function() {
console.log('hello world');
this.router = new Router();
this.router.history.start();
}
};
window.app.init();
и это все собрались <script src = "bundled.js"></script>
в моей index.html и package.json код ниже
"scripts": {
"start": "watchify js/app.js -o bundled.js",
"build": "browserify js/app.js -o bundled.js"
Любая помощь будет очень признателен! Спасибо всем!