Applaying Framework7 with Remix.js
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- react, typescript
- Área
- frontend, mobile-dev
Línea de trabajo
Comienza con app/root.tsx, especialmente con la configuración de Framework7 App/View y Remix Outlet, y luego compara la navegación en app/routes/_index.tsx y app/routes/about.tsx. Reproduce la navegación mediante enlaces y verifica que la URL del navegador se actualice mientras la página esperada se renderiza a través de los routers de Remix y Framework7.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Overview
Hello Folks,
I'm trying to apply Framework7 latest version [v8.3.4] to my Remix.js app, i do all nesessry things from boath side (remix and framework7) and it's working with remix router issue
Explain the project Remix.js file
- app/root.tsx
- app/routers/_index.tsx
- app/routers/about.tsx
let's take a look how this file look like with the code:
- for full code overview take a look to this code repo: []
1- root.tsx:
import {
Links,
Meta,
Scripts,
Outlet,
ScrollRestoration,
} from "@remix-run/react";
import type { LinksFunction } from "@remix-run/node";
// Import F7 Bundle and React Plugin
import Framework7 from 'framework7/lite-bundle';
import Framework7React, { App, View } from 'framework7-react';
import AboutPage from './routes/about';
import HomePage from './routes/_index';
// Initialize Framework7 with the React plugin globally
Framework7.use(Framework7React);
// Framework7 module styles
import '../node_modules/framework7/framework7-bundle.css'
export const links: LinksFunction = () => [
{ rel: "preconnect", href: "https://fonts.googleapis.com" },
{
rel: "preconnect",
href: "https://fonts.gstatic.com",
crossOrigin: "anonymous",
},
{
rel: "stylesheet",
href: "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap",
},
];
export function Layout({ children }: { children: React.ReactNode }) {
return (
<html lang="en">
<head>
<meta charSet="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<Meta />
<Links />
</head>
<body>
{children}
<ScrollRestoration />
<Scripts />
</body>
</html>
);
}
const f7params = {
name: 'My App',
// routes
routes: [
{
path: '/',
component: HomePage,
},
{
path: '/about/',
component: AboutPage,
},
],
// ... other params
}
export default function MyApp() {
return (
<App theme="auto" {...f7params}>
{/* Main View component with "main" prop */}
<View main url="/ss">
{/* This renders nested routes via Outlet */}
<Outlet />
</View>
</App>
);
}
2- _index.tsx: (as home page with route '/')
import type { MetaFunction } from "@remix-run/node";
import { Link } from "@remix-run/react";
import { Navbar, Page } from 'framework7-react';
export const meta: MetaFunction = () => {
return [
{ title: "New Remix App" },
{ name: "description", content: "Welcome to Remix!" },
];
};
export default function Index() {
return (
// Main Framework7 App component where we pass Framework7 params
<Page>
<Navbar title="Home" />
<p>Welcome to the Home Page</p>
<Link to="/about/">About Page</Link>
</Page>
);
}
3- about.tsx: (as home page with route '/about')
import type { MetaFunction } from "@remix-run/node";
import { Link } from "@remix-run/react";
import { Page, Navbar } from 'framework7-react';
export const meta: MetaFunction = () => {
return [
{ title: "Remix App - About" },
{ name: "description", content: "Welcome to About Page!" },
];
};
const about = () => {
return (
<Page>
{/* Top Navbar */}
<Navbar title="About"></Navbar>
{/* Page Content */}
<p>Page About</p>
<Link to="/">Home</Link>
</Page>
)
}
export default about
I was wondering how to make router in Framework7 compatible with Remix
this is working but url not updated on my browser
- Lenguaje dominante
- JavaScript
- Estrellas
- 18.8k
- Forks
- 3.2k
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de framework7io/framework7
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
framework7io/framework7#4365 · 1 comentario ·
-
propsHistory Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
framework7io/framework7#4347 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
framework7io/framework7#4222 · 3 comentarios ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
framework7io/framework7#4175 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
framework7io/framework7#3969 · 3 comentarios ·
Todos los issues de framework7io/framework7
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
mksglu/context-mode#1200 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
neondatabase/website#5944 ·
-
module: core
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
bigbluebutton/bigbluebutton#25849 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
jaegertracing/jaeger-ui#4506 ·