Comments (9)
The typescript declarations were manually created via a pull request (the library is not written in typescript). The errors you are getting are because the declarations have not been updated for the new versionβs features.
from react-native-toast-message.
Oh ok i understand, could you tell me if this is in your backlog ?
Thanks for your help and for your quick answer!
from react-native-toast-message.
Hi @dpnick, updated type declaration in v1.4.1. Please let me know if it works
from react-native-toast-message.
Hi @calintamas, i can now have access to config prop and BaseToast but i have another issue trying to custom with BaseToast :
Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined.
I looked at your index.d.ts and i think this problem comme from the export of BaseToast, you did it like :
export const BaseToast: React.FC<BaseToastProps>
But i think it sould be a function (just like this related issue facebook/react#13445)
Thanks for your quick fix π
from react-native-toast-message.
React.FC<BaseToastProps>
That's a typescript shortcut for "functional component that accepts props of type BaseToastProps
", so the exported type is already a function, not an element as was the problem in the linked issue.
from react-native-toast-message.
Ok thanks, any ideas ?
@calintamas if you need my code to reproduce let me know!
from react-native-toast-message.
@dpnick yes, that would help
from react-native-toast-message.
Actually it was pretty simple (based on your example from the documentation) :
import Toast, { BaseToast, BaseToastProps } from 'react-native-toast-message';
const toastConfig = {
success: ({ text1, text2, ...rest }: BaseToastProps) => (
<BaseToast
{...rest}
style={{ borderLeftColor: 'pink' }}
text1={text1}
text2={text2}
/>
)
};
export default function App() {
return (
{...}
<Toast config={toastConfig} ref={(ref) => Toast.setRef(ref)} />
{...}
);
}
from react-native-toast-message.
@dpnick try setting the config arg type to any
, since it does not exactly represent BaseToastProps
- it has extra keys like position
, type
, hide
, show
etc
const toastConfig = {
success: ({ text1, text2, ...rest }: any) => ()
};
If you have a suggestion on how to do this better, let me know
from react-native-toast-message.
Related Issues (20)
- Export a base toast that can accept any content
- Type safety for Toast.show based on custom toast type HOT 3
- How to make the toast height dynamic based on content HOT 6
- Instal with Typescript HOT 1
- Toast Not working in with React-native 0.71.8 version HOT 8
- Inconsistent Availability of text1 and text2 Style Props in toast.show Function
- display toast on more than one screen HOT 4
- migrate to reanimated ?
- how to use with expo app routes? HOT 6
- onHIide feature for toast does not work, if i pass code to execute for onHide callback as arguement HOT 1
- Toast not showing on RN v0.72.4 HOT 6
- Modal prompts on iOS overlay the toast HOT 12
- toast showing without calling it HOT 9
- You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file HOT 1
- Toast isn't swipeable inside Modal if custom toast is used
- Unable to delay between two roasts. HOT 1
- How to override the default duration for the Toast at root level for all instances? HOT 1
- Toasts should not move. How to stop moving? HOT 6
- crash on android when Toast.show() HOT 1
- Feature: Enable Swipe with Customizable Position-Right/Left 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 react-native-toast-message.