Comments (7)
I have never created such a file, it will be cool if someone will make a PR.
If I manage to find time, I will try to understand this topic.
from knockout-es5.
Someone created one: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/knockout.es5
from knockout-es5.
I'm having problems using the knockout.es5 typing mentioned above.
I can't add an import statement because the typing doesn't appear to export anything. I.e typescript won't let me do this:
import knockoutes5 = require("knockout-es5");
because it says "knockout-es5" isn't a module.
Any ideas how to solve this?
from knockout-es5.
I am not sure if it has been updated but I ended up editing the default one, here is how it looks:
// Type definitions for Knockout-ES5
// Project: https://github.com/SteveSanderson/knockout-es5
// Definitions by: Sebastián Galiano <https://github.com/sgaliano/>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
/// <reference path="../knockout/knockout.d.ts" />
interface KnockoutStatic {
track(obj: any, propertyNames?: Array<string>): any;
defineProperty(obj: any, propertyName: string, evaluator: Function): any;
defineProperty(obj: any, propertyName: string, options: KnockoutDefinePropertyOptions): any;
getObservable(obj: any, propertyName: string): KnockoutObservable<any>;
valueHasMutated(obj: any, propertyName: string): void;
}
interface KnockoutDefinePropertyOptions {
get(): any;
set?(value: any): void;
}
interface Array<T> {
remove(item: T): T[];
removeAll(items: T[]): T[];
removeAll(): T[];
destroy(item: T): void;
destroyAll(items: T[]): void;
destroyAll(): void;
}
declare module "knockout-es5" {
export = ko;
}
Then I do
import * as ko from "knockout-es5"
from knockout-es5.
Thanks @grofit
Is the import for knockout still needed when you do that - or can I just import es5?
I am currently doing this:
import knockout = require("knockout");
import * as ko from "knockout-es5"
Cheers!
from knockout-es5.
the d.ts should not effect things, to my knowledge you do import * as ko from "knockout-es5"
and everything works as I think internally knockout-es5 includes knockout and proxies it, so you should be ok to just call the one include.
The ONLY quirk around this I found was libraries that self extend the ko instance like knockout-validation
will not work without knockout being explicitly included, so I am having to mix and match es-5 and normal knockout based upon if I need validation etc.
I will raise an issue on ko validation around this.
from knockout-es5.
Just updated my definitions and having problems getting es5 working again now that KnockoutStatic
seems to have been removed in the latest knockout typings.
I have openedup a stack overflow here: https://stackoverflow.com/questions/47671487/knockout-es5-typings - would really appreciate a working example!
from knockout-es5.
Related Issues (20)
- Functions as computed HOT 2
- Add array support for deep track HOT 4
- Item which is already an observable array does not get wrapped with mutators
- Add latest to NPM? HOT 6
- getObservableArray support?
- "Implicit" Computed properties should not be able to be overwritten HOT 5
- update to ko 3.4.0 HOT 1
- Not working via npm? HOT 3
- Update NPM repo
- How do you get an observable within an observableArray? HOT 13
- Create release w/o weakmap polyfill
- Weakmap is not referenced as dependency, but is required by package. HOT 2
- Would you please update the version in npm? HOT 1
- Recalculation Never Happens in a Nitch Case HOT 1
- Breaks F12 Tools in IE11 HOT 2
- Uncaught TypeError: Function.prototype.toString is not generic for inspecting variables HOT 2
- Cannot write to an observable received as param inside of component
- how to access $rawData
- Computeds should be pureComputeds?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from knockout-es5.