|
Hi all, I am Trying to convert an ASP.Net MVC jQuery application into ASP.Net React API application, in a situation I needed to import multiple images from almost same folder or folders from same root directories, hence I decided to write a function that returns array to be able to read the image url in the component.
For some reason its giving me error, here in this below Code I am attempting to write function within const but if I can write it in a separate js or jsx file for common usage and reference it in my const component it would be really helpful for me. But before that I am getting a syntax error as below in the line at "const"
const images = importAll(require.context('./images', false, '/\.png/'));
My full code for this component is as below:
import React from 'react';
import { connect } from 'react-redux';
import '../css//bootstrap.css'
import ArbHeader from '../images/header/arbclassic-ca.png'
import ArbClassicTwitter from '../images/header/arbclassic-twitter.png'
import xxxx from '../images/header/arbclassic-linkedin.png'
import CalxxxInfo from '../images/header/arbclassic-ytube.png'
import xxxClassicEmail from '../images/header/arbclassic-email.png'
import HeaderOrganization from '../images/header/header_organization.png'
import ARBFooterTwitter from '../images/footer/twitter.png'
import ARBFooterYouTube from '../images/footer/youtube.png'
import ARBFooterLinkedIn from '../images/footer/linkedin.png'
import ARBFooterEmail from '../images/footer/email.png'
let url = '../images/header';
const Dashboard = (props) => (
function importAll(r) {
let images = {};
r.keys().map((item, index) => { images[item.replace('./', '')] = r(item); });
return images;
}
const images = importAll(require.context('./images', false, '/\.png/'));
<React.Fragment>
<header>
<div className="header-top-outer container-fluid">
<div className="container">
<ul className="header-top">
<li><a href='http://www.ca.gov' target="_blank"><img src={ArbHeader} alt="California dot gov website" /></a></li>
<li><a href='https://twitter.com/xxxResources' target="_blank"><img src={ArbClassicTwitter} alt="xxx Resources Board Twitter" /></a></li>
<li><a href='https://www.youtube.com/user/calxxxinfo' target="_blank"><img src={CalxxxInfo} alt="xxx Resources Board Youtube" /></a></li>
<li><a href='https://www.linkedin.com/company/california-xxx-resources-board' target="_blank"><img src={xxxx} alt="xxx Resources Board LinkedIn" /></a></li>
<li><a href='https://public.govdelivery.com/accounts/xxxx/subscriber/new?topic_id=listserv' target="_blank"><img src={xxxClassicEmail} alt="xxx Resources Board Email" /></a></li>
</ul>
</div>
</div>
<div className="container">
<div className="header-bottom clearfix">
<div className="float-left">
<a href="http://arb.ca.gov"><img src={HeaderOrganization} className="xxxx-logo" alt="California xxx Resources Board Logo" /></a>
</div>
<nav>
<ul className="nav float-right">
<li className="nav-item"><a className="nav-link" href="https://ww2.arb.ca.gov/community-xxx-quality-portal">Home</a></li>
<li className="nav-item"><a className="nav-link" href="about.html">About</a></li>
<li className="nav-item"><a className="nav-link active" href="index.html">Preview</a></li>
<li className="nav-item"><a className="nav-link" href="data.html">Access Data</a></li>
<li className="nav-item"><a className="nav-link" href="mailto:aqview@arb.ca.gov">Contact</a></li>
</ul>
</nav>
</div>
</div>
</header>
<footer>
<div className="footer-outer container-fluid">
<div className="footer-container container">
<div className="row">
<div className="footer-left col-md-6">
<h2>Contact Us</h2>
<a href="tel:8002424450">(800) 242-4450</a> | <a href="mailto:helpline@arb.ca.gov">helpline@arb.ca.gov</a>
<p>1001 I Street, Sacramento, CA 95814</p>
<p>P.O. Box 2815, Sacramento, CA 95812</p>
<p className="version">AQView Version 1.0</p>
</div>
<div className="footer-right col-md-6">
<div className="footer-right-social-outer container-fluid">
<ul className="footer-right-social">
<li><a href="https://twitter.com/xxxResources" target="_blank"><img src={ARBFooterTwitter} alt="Link to ARB Twitter" /></a></li>
<li><a href="https://www.youtube.com/user/calxxxinfo" target="_blank"><img src={ARBFooterYouTube} alt="Link to ARB YouTube" /></a></li>
<li><a href="https://www.linkedin.com/company/california-xxx-resources-board" target="_blank"><img src={ARBFooterLinkedIn} alt="Link to ARB LinkedIn" /></a></li>
<li><a href="https://public.govdelivery.com/accounts/xxxx/subscriber/new?topic_id=listserv" target="_blank"><img src={ARBFooterEmail} alt="Link to ARB Email" /></a></li>
</ul>
</div>
<ul className="footer-nav">
<li><a href="https://ww2.arb.ca.gov/accessibility">Accessibility</a></li>
<li><a href="https://ww2.arb.ca.gov/xxxxis-privacy-and-conditions-use">Privacy Policy</a></li>
<li><a href="https://ww2.arb.ca.gov/xxxxis-privacy-and-conditions-use">Conditions of Use</a></li>
<li><a href="https://www.arb.ca.gov/capcoa/roster.htm">Local xxx Districts</a></li>
<li><a href="http://registertovote.ca.gov/" target="_blank">Register to Vote</a></li>
</ul>
</div>
</div>
</div>
</div>
</footer>
</React.Fragment>
);
export default connect()(Dashboard);
Any help would be greatly helpful - thanks in advance.
modified 24-Sep-19 19:29pm.
|
|
|
|
|
Is importAll a function that you or somebody in your group wrote?
If so you should ask the author about it.
I would imagine that you just call or import each image's physical location in the React component,
And then use something like webpack to gather the physical images and copy them to the final location that you stated in the component. The webpack can also compress the images as well. It would be a waste of CPU for the component to handle this task.
Import all files in folder · Issue #705 · rails/webpacker · GitHub
By the way, I live in California and use that website.
If it ain't broke don't fix it
Discover my world at jkirkerx.com
modified 25-Sep-19 15:03pm.
|
|
|
|
|
jkirkerx wrote: Is importAll a function that you or somebody in your group wrote? No i tried it online, but that seems to incorrect approach in terms of performance and complexity, the link that you have provided looks good to me.
jkirkerx wrote: Import all files in folder · Issue #705 · rails/webpacker · GitHub
got it, it looks good to me
jkirkerx wrote: By the way, I live in California and use the CARB website and find it odd that your working on it. I understand I removed the domain name - sorry for that, after a long time I am on this site again, so forgot the etiquette of posting
thanks my friend
|
|
|
|
|
Can you please scrub my domain name from your message too buddy?
|
|
|
|
|
BTW I am almost there to finish that conversion my friend - but thanks for all the support you have been giving to me and to many on this forum. Yes as you said it was really PIB converting all the jQuery and bootstrap everything into React, main problem was jQuery code isn't nicely readable - the parenthesis after parenthesis and braces just confusing a lot - where it starts and where ends. Most of that was really easy in React though. Its just close to finish and getting ready to give a Demo in couple of days - and once again thank you.
|
|
|
|
|
Well that was fast!
If it ain't broke don't fix it
Discover my world at jkirkerx.com
|
|
|
|
|
I have a form that submit a query to an API. the parameter is passed correctly to the next page and I can print it as a test, but it is not passed to the API query
q='%"&Request.QueryString("id")&"%'
sometimes the result is just generic and does not include the query parameter. I can print it and the parameter is definitely passed to the page but it is just ignored or return an error: System.NullReferenceException: Object reference not set to an instance of an object. Any ideas on how to fix this? not sure if it is a formatting issue or the way the page is loaded.
This requests the query parameter and displays it on the page as a test (correct value is returned)
Form page:
dim intID as String
intID = Request.QueryString("id")
Response.write(intID)
Result Page:
This is the Query Parameter section:
Dim doc As New XmlDocument()
doc.Load("http://api.tradedoubler.com/1.0/products.xml; q='%"&Request.QueryString("id")&"%';tdCategoryId=168;%20category=test?token=B17495243749DAC9660980F6FB98495928DDX123")
So when I use the browser - copy the link to the url with a parameter e.g. q=spain, I get the correct results but when embedded in the asp.net page, it doesn't work
|
|
|
|
|
hm9 wrote: http://api.tradedoubler.com/1.0/products.xml; q='%spain%';tdCategoryId=168;%20category=test?token=B17495243749DAC9660980F6FB98495928DDX123
That doesn't look like a valid URL. Compare it to the working URL you're loading in the browser.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
It is valid and works on the browser apart from the token which is modified
|
|
|
|
|
The Url could be valid, but Request.Querystring("q") can't find "Q" because the call just parses the Url for "/?" and "&"
It can find it if the Url was shaped like this
http:
Otherwise you would have to write some custom code to parse your Url the way you have it formatted.
If it ain't broke don't fix it
Discover my world at jkirkerx.com
|
|
|
|
|
When Rebuild web.net asp.net error "It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS." press F5 to run normally, but Rebuild the error above, this error how to fix it?
error
|
|
|
|
|
|
I have read this article but it does not apply to my program
|
|
|
|
|
Well, given the huge amount of information you've provided, I'm sure somebody will be able to come up with a solution for you.
</SARCASM>
Remember, we can't see your screen, access your computer, or read your mind. All we have to go on is the information you put in this little box. So far, the only information you've provided is that you get this error, and that the actual cause of this error "doesn't apply" to your application.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
You probably have your main web.config in a sub-folder of your site. Either by accident or because your site is misconfigured in IIS (if the site root folder is "mysite" you can't dump a website at "mysite/subsite"). As we can't access your system from here and you have provided no real information beyond the error, it's hard to give specific advice.
|
|
|
|
|
I just started learning asp.net webform myself, I don't understand webform much, I don't know what information you need? In your opinion, if I have a Web.config file I don't need to declare the above error, if I have two "mysite/subsite" Web.config files, how do I register them? I sent the Web.config file and reported an error to you: Web
Error 1 It is an error to use a section registered as allowDefinition = 'MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS. C:\WebSite2010\App_Data\Web.config 22
I will send the image of the program, you see the attached image http://www.mediafire.com/view/dpkqjr7yunbhjc4/website2010_01.jpg/file
I have used IIS, you see the attached image http://www.mediafire.com/view/rzf3pcy4wtjg2su/website2010_02.jpg/file
If you need any information what, please ask me.
|
|
|
|
|
An IIS site can only host one website, so one folder with web.config in the root. If you want to host multiple sites then you need an new IIS site created for each one, and they can't be in sub-folders of each other;
/site1/web.config
/site2/web.config
You would register a site in folder "site1" and one in "site2". If you have this arrangement
/mysite/site1/web.config
/mysite/site2/web.config
and register an IIS site at "mysite" thinking you can then do http://mysite/site1 and http://mysite/site2 then you'll get the error you have now.
If you do want one site nested inside another you need to create what is called a virtual directory. Google for how to create sites in IIS, this is all well documented.
|
|
|
|
|
I understand what you mean, I deleted all the web.config, I left only one web.config file at the root directory, then the error occurred:
The type 'XXX' in 'c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\YYY' conflicts with the imported type 'XXX' in 'c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\ZZZ'. Using the type defined in 'c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\YYY'. c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\YYY
how to fix this error ?
|
|
|
|
|
Delete the temporary .net files and just make sure the site is deployed correctly, make sure you have project references where one project access another's code, make sure you're not defining the same type in two projects, and so on.
The fact that you deleted all web.configs leaving one makes me think you still don't have a properly deployed solution. If you did there wouldn't be multiple configs. Google how to deploy a VS project to IIS to make sure you're doing it properly.
|
|
|
|
|
I find a lot of information on google on this error but I have not found any article to fix this error. I went to the directories:
C:\Users\Administrator\AppData\Local\Temp\WebSitePublish\xxx
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\xxx
C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\xxx
to delete but when I Rebuild reappears with another name whose extension has not been changed, how do I fix it ? I submitted a sample of my faulty program, what errors can you see ? You see my attached file: WebSite2010
I searched the Internet for errors that were similar to my program errors, viewing and reference. This error may also show up c# - Namespace class conflict - Stack Overflow
1. Close Visual Studio
2. Clear Temporary ASP.NET Files directories by clearing the following folders:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\
C:\Users[your_user_name]\AppData\Local\Temp\Temporary ASP.NET Files\
Restart the World Wide Web Publishing service (Start menu\Settings\Control Panel\Administrative tools\Services).
3. Clear the project's Bin and Obj folders and deploy new assemblies if it is necessary;
4. Rebuild your application
|
|
|
|
|
The error is probably a red herring, the issue is that you simply haven't deployed correctly. We can't access your machine, we don't know how your project is set up, or your IIS or your folders or anything.
|
|
|
|
|
Did you see the example I sent you ? According to you, how to fix the above error ?
|
|
|
|
|
I am struggling to find the best way to persist a select list collection from the OnGet to the OnPost. This is required because I have a razor page with multiple tabs where the user save the details in the first tab (using OnPost that clears the SelectList) and then continues to the next tabs.
Repopulating the collection(s) from the database after the post works but that seems like it is the wrong answer.
Never underestimate the power of human stupidity -
RAH
I'm old. I know stuff - JSOP
|
|
|
|
|
Mycroft Holmes wrote: Repopulating the collection(s) from the database after the post works but that seems like it is the wrong answer.
Why does it seem like the wrong answer?
The only other options would be to store the entire list in one or more hidden fields, which would bloat the request and response sizes; or to store the list in the session, which would increase the memory pressure on the server.
If it's possible to reload the list from the database, that seems like the least-bad option.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
Interesting, as a desktop developer I have always attempted to reduce the number of calls to the database, caching static tables in memory on the local machine. I was looking for a similar capability in the web development arena.
I will have no compunction reloading from the database in future, it will reduce some of the gymnastics I used to perform about current lists!
Never underestimate the power of human stupidity -
RAH
I'm old. I know stuff - JSOP
|
|
|
|