I am developing my first reacts application, I go through various reacts plugins for data grid with infinite scroll option but didn't get proper solution.
What I have and What I need is:
I am fetching the users list from 3rd party API.
At a time only 50 users records fetch via API.
I have around 10000 users records and need to display first_name, last_name, email with Edit/Delete link in table view.
I need to append the next 50 users in the list when user scroll the window/div and it will happen till all the records are displayed.
I also need the sorting and searching option on first_name so that user can sort/search the user by first_name. It also needs to be done via ajax request to 3rd party API.
Please suggest me the good reactjs component/plugins to achieve this.
Thanks in advance!
Take a look on react-data-grid, it's full of features and really simple to use
I'm using react-infinite-scroller and working fine. Easy to implement.
Related
Lightning web Components to display list of Objects in a drown list. and display fields of selected objects
this is possible using getGlobalDescribe in Apex side and then getObjectInfo on the javascript side.
If you need something already working, you can have a look at the AppExchange market and try to find a solution there.
If you need a development, I suggest to find a developer or hope that someone will have time to give you that for free but this website is more about questions/issues that we try to solve.
I started with admin-on-rest recently and I love what it brings. However, I am stuck on 2 issues and I was hoping to get some help:
Question 1
I created a custom theme with custom color pallette etcetera. How can I reduce the spacing around buttons? You can see it on the demo here: https://marmelab.com/admin-on-rest-demo/#/customers/121, the save button has an indent of maybe 20-30 pixels. Can I remove this and align the button with the input fields, title, etcetera?
Question 2
What is the best approach for creating an /#/user/details/ view for example, where users can edit their own account details, re-using the EDIT component? I have now added this resource:
<Resource name="user/details" edit={EditDetails} />
I can edit the account by going to /#/user/details/ID (replacing ID with the actual user ID). But I don't want to expose the ID. Better yet, the SPA doesn't need to know about the ID at all, because the API can understand a PUT request to /user/details/ as a request to update the current user details. So I don't actually need the SPA to send or need this ID. Any ideas on this?
Question 1: https://marmelab.com/admin-on-rest/Theming.html#overriding-a-component-style
Customizing the Toolbar which contain the button will require a bit a of work in versions 1.*.*. You'll have to create a custom Toolbar using the original as a starting point (https://github.com/marmelab/admin-on-rest/blob/master/src/mui/form/Toolbar.js) and use it as the toolbar prop for your form (https://marmelab.com/admin-on-rest/CreateEdit.html#toolbar). This will be a lot easier in v2.
Question 2: this can be achieved using a custom restClient. In a nutshell, intercept calls which target the user resource and build the url yourself, not forgetting to handle the response.
However, for such a thing, I would advise against using the admin-on-rest mechanisms as it seems users are not really a resource but an application concept. As such you might want to handle this in a custom page with fetch by yourself.
I want to show different views based on the user of my application for example if the user is admin he can see all the controls or when it is acting as user he can only see a subset of controls and UI and he can perform the limited action.
One solution that comes to my mind is sending the role information with the page as a JSON but that would require me to have knowledge of the logged in user so, basically I can first check if the user is logged in or not through the cookie? if no I can just load the lightweight version of the login page and after user logs in then I can send a new page altogether with user's profile information embedded in it.
The other approach that I see is that I can bootstrap my angular application and then check the login status and if the login is done, then bring the profile information through a JSON and update the view, but I think it would be slow and error-prone.
I don't know what is best / recommended approach.
First approach seems to be a better approach out of these 2.
Problem with the second approach is you are sending 2 requests to the server - one for login and then 2nd one to get the user role/profile. If you are choosing this approach then you may have few issues depending how are you going to implement it:
If you are updating your UI after login then you will have to decide what should be shown to the user since you don't know the user profile yet. Even if you come up with some minimal privilege UI, there will be another request to get the profile which will kind of refresh the UI again - 2 UI refreshes could be annoying for the user. Not to mention that there 2 requests going which could make your site slow.
If you decide not to update the UI after login but only after you get user profile, still the delay would be more as you will have to wait for response of 2 separate requests. Could be a major issue with slow networks(consider mobile)
If you are using the first approach, you'll get away with above mentioned problems.
I'm looking for a way to create a search box in wordpress, where visitors can search a number from the database. Is this possible? I have several package numbers in my database. I want to give my visitors the ability to search for their package number and request the information that comes with the number.
What you want to do can be done.
I suggest a different approach than using wp-exec. (I just looked at wp-exec website, and that plugin was created for WordPress 1.5, which means it hasn't been updated in about 5 years).
The content you want to display exists entirely outside of WordPress. I suggest you use a custom page template - see
http://codex.wordpress.org/Pages#Creating_Your_Own_Page_Templates
In this case you would not use WordPress posts or pages or custom post types. On the custom page template you would write (or have written if you don't have the knowhow to do it yourself) PHP code to extract the info from the database and display it on a page.
For pages like that you would be using WordPress only as a container within which to display the results - they custom page would appear in the site Nav, The page of results would use the site's theme to display so it looks like the rest of the site.
But the code to display from the database would not use the WordPress loop. It would be PHP / MySQL data retrieval and display code.
I really doubt you will find a plugin that lets you display results from an external database, formatted the way you want them to appear. The reason is every external database is different, has different tables and table structures. And no two sites will want the external data visually displayed in the same way. So there is little generalization to encapsulate in a plugin as everyone wants it different.
I've created pages on some sites along the lines of what you want to do thus I know it can be done. But it requires writing custom code.
Hey guys. so I'm not quite sure how to tackle my next big problem in this project.
I want to create an admin interface which allows my client to create a dynamic menu page for the food and drinks. Basically, I want him to be able to enter a short paragraph for the top of the page, and then 2-6 widgets that he can drag and drop onto the page. This menu will then render under owlhouse.com.au/food. I figure it'll be something to do with associations, but I have no idea how to construct a function which attaches dynamic data to the page on the fly.. and keep it in the layout the client wants (2 columns, diff modules for beer, wine, etc.)
HOW ON EARTH DO I GO ABOUT THIS?
thankyou,
~Harley
Dynamic Data
Build a "CRUD" interface that the client can log into. (Think blog entries). Store the content in the database (of course). Then provide a drag & drop interface that allows the client to order them, assign them to pages, or whatever is needed to meet the requirement. When the client clicks update, you simply add/remove IDs to the content for the given page. When the page loads (like a blog page) it loads the content for the given IDs.
Widgets
The same would apply for widgets. I would build an element that provides the basic layout for the widget. Then build it the same way as the content. The client will have CRUD functionality with drag & drop interface to show which widgets are displayed.
Send me a PM if you need to hire someone. ;)