Comments (4)
I am trying to find where but someone posted this code snippet and its made my life easier
import matter from 'gray-matter';
const typedMatter = <T = any>(markdown: string) => {
const rawMatter = matter(markdown);
return {
...rawMatter,
data: rawMatter.data as T,
};
};
export default typedMatter;
from gray-matter.
I should mention that I'm doing a type casting using as
and this doesn't make me happy but it does the job.
type Content = GrayMatterFile<string> & {
data: { title: string, description: string }
}
const content = parsedContent as Content
from gray-matter.
I would enjoy a similar feature. As is, I'm just assigning a new object from my file parsing function using just the fields I expect, and returning that, but being able to specify the type on the return from matter()
would be super handy.
from gray-matter.
Actually, it looks like this issue has been brought up before, and has been open for a long time with no feedback from the library author. Kind of disappointing.
#135
from gray-matter.
Related Issues (20)
- apostrophe in frontmatter HOT 2
- Can't parse datetime format
- ReferenceError: Buffer is not defined HOT 7
- typescript issues - is this package deprecated?
- Can't get values of double-nested entries
- Passing environment variable to the yaml file header HOT 2
- (Request) Any way to generate "square bracket" arrays rather than lists? HOT 1
- Add support for async excerpt functions? HOT 2
- Some kind of unwanted caching behaviour?
- `file.isEmpty` is not documented in typings
- gray-matter seems to be broken in Next 13 HOT 2
- Add Superscript Support
- Image for sponsorships
- android app issues
- Invalid front-matter should not be cached
- adding colon inside string breaks gray-matter parsing HOT 1
- Expose `YAMLException` from `js-yaml`
- The `excerpt` function option should be a function that returns a string, but it isn't HOT 5
- grey-matter does not import as a function when using import statements HOT 2
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 gray-matter.