Current iteration #3
Backend functionality for classes/booking notification when creating a class and so on
function distance(lon1, lat1, lon2, lat2) { | |
const R = 6371e3; // metres | |
const Q1 = lat1 * Math.PI / 180; | |
const Q2 = lat2 * Math.PI / 180; | |
const DP = (lat2 - lat1) * Math.PI / 180; | |
const DA = (lon2 - lon1) * Math.PI / 180; | |
const a = Math.sin(DP / 2) * Math.sin(DP / 2) + | |
Math.cos(Q1) * Math.cos(Q2) * |
// This gist aims to explain how it's possible that async functions inside React | |
// using createFetcher(Promise).next(key) can work. | |
// A possible implementation of the new createFetcher function | |
// as shown by https://twitter.com/jamiebuilds/status/969169357094842368 | |
// @param method, should be a function returning a Promise. | |
// @returns an object with a property 'read', used to read values from the resolved 'cache'. | |
const createFetcher = function(method) { | |
// First create a Map for the resolved values. | |
const resolved = new Map() |
I. You're stick to the "normal" way of Meteor development and you can't work how you want without installing a package that do some job. That also might be no problem because packages do more than what you want and this increase filesize and this will increase the loading time of the app.
II. Its hard to debug, when there are problems. Its very hard to investigate and find a solution and this increase development time
III. The current app is bound to unnecessary external services like
@EventBusBind | |
@Component({ | |
selector: 'wpci-header', | |
templateUrl: './header.component.html', | |
styleUrls: ['./header.component.less'] | |
}) | |
export class HeaderComponent implements OnInit { | |
ngOnInit() {} | |
export function LocalStorageProperty(property:string) { | |
return function(target: any, propertyKey: string | symbol) { | |
var _ref_ = window['Reflect']; | |
var meta, type; | |
if(_ref_.getMetadata) { | |
meta = _ref_.getMetadata('design:type', target, propertyKey); | |
var result = /^function\s+([\w\$]+)\s*\(/.exec( meta.toString() ) | |
var fnName = result ? result[ 1 ] : ''; | |
if(fnName && fnName.length) { |
<td md-cell> | |
<div ng-if="!result.osd.csmInstruction || result.enableFlag"> | |
<md-select ng-if="!$ctrl.cp" name="status" ng-init="result.enableFlag='true'" ng-model="result.osd.csmInstruction" aria-label="status" placeholder="Select"> | |
<md-option value="">Select</md-option> | |
<md-option value="Hold for Decision">Hold for Decision</md-option> | |
</md-select> | |
<span ng-if="$ctrl.cp"> | |
{{result.status | na}} | |
</span> | |
</div> |