Skip to content

Instantly share code, notes, and snippets.

@Latrasis
Last active December 14, 2015 00:34
Show Gist options
  • Save Latrasis/ed68c7c9e216010fada2 to your computer and use it in GitHub Desktop.
Save Latrasis/ed68c7c9e216010fada2 to your computer and use it in GitHub Desktop.
Mithril Page Example
var m = require('mithril')
// Fetch All Modules
var WalletPage = require('wallet_page.js');
var UserPage = require('user_page.js');
var HomePage = require('home_page.js');
// Set Route with default '/' and render
m.route(document.body, '/',{
'/': HomePage,
'/wallet:userID': WalletPage,
'/user:userID': UserPage
});
var m = require('mithril');
var Wallet = require('../wallet/index.js');
var Identity = require('../identity/index.js')
// Page Module
var WalletPage = {};
// View-Model
var WalletPage.vm = {};
// Page Controller
WalletPage.controller = function(){
// Get Current User Id from Route Parameter
var userid = m.route.param('userID');
// Set Wallet Page Values
this.vm.account = {
amount: Wallet.account.get(userid);
username: Identity.view(userid);
id: userid
}
// Get Date
this.vm.date = function(){
return Date.now();
}
}
// Page View -> Recieves Wallet.vm
WalletPage.view = function(vm){
return m('ul',[
m('li', vm.amount),
m('li', vm.username),
m('li', vm.id),
// This Date Refreshes Live
m('li', {value: vm.date()})
])
}
// Export Wallet Page
module.exports = WalletPage;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment