Mam zadowolenie w plikach Markdown (generowane w Netlify CMS), które wyglądają tak:

enter image description here enter image description here

Nie jestem pewien, czy wyróżnienie składniowe w kodzie VS leczy wartości startTime i endTime lub jeśli jest to coś, co jest z samą Markdown lub sposób, w jaki jest tworzony w Netlify CMS.

Ale podobno Graphql wydaje się czytać jako numer, a drugi jako ciąg:

enter image description here

Próbowałem utworzyć definicje typu w gatsby-node.js w następujący sposób, ale kiedy sprawdzam wyjście konsoli, widzę, że jest za późno i otrzymano wartości 1200 i 1080 zamiast 18:00 i 20:00

exports.createSchemaCustomization = ({ actions, schema }) => {
    const { createTypes } = actions
    const typeDefs = [
        schema.buildObjectType({
            name: 'MarkdownRemark',
            fields: {
                frontmatter: 'Frontmatter!'
            },
            interfaces: ['Node'],
            extensions: {
                infer: true,
            },
        }),
        schema.buildObjectType({
            name: 'Frontmatter',
            fields: {
                startTime: {
                    type: 'String!',
                    resolve(parent) {
                        console.log(parent.startTime);
                        return `${parent.startTime}`;
                    }
                },
                endTime: {
                    type: 'String!',
                    resolve(parent) {
                        console.log(parent.endTime);
                        return `${parent.endTime}`;
                    }
                }
            }
        }),
    ]
    createTypes(typeDefs)
}

Czy istnieje jakiś sposób, w jaki mogę określić w konfiguracji Netlify.yml, aby nie traktować tego pola jako numeru? Czy patrzę na złe miejsce?

W ten sposób oświadczam pola w konfiguracji.yml:

- { label: "Start Time", name: startTime, widget: string}
- { label: "End Time", name: endTime, widget: string}

Ale teraz, kiedy patrzę w Github, widzę kilka bardzo dziwnych wyników:

enter image description here

0
rory 28 październik 2020, 16:52

1 odpowiedź

Najlepsza odpowiedź

W twoim config.yml użyj datetime Widget i opcje formatu dostarczone przez netlify:

- { name: startTime, label: "Start Time", widget: datetime, date_format: MM/DD/YYYY, time_format: false, format: L }
- { name: endTime, label: "EndTime", widget: datetime, date_format: MM/DD/YYYY, time_format: false, format: L },

Zmień swój date_format(MM/DD/YYYY) dla dowolnego żądanego formatu.

Należy pasuje do ciebie.

1
Ferran Buireu 29 październik 2020, 09:27