Solution
It’s fixed. I do npx create-react-app@5.0.0 my-app
. Ref link: https://stackoverflow.com/a/70358556/14426381
Solution
It’s fixed. I do npx create-react-app@5.0.0 my-app
. Ref link: https://stackoverflow.com/a/70358556/14426381
Solution
If you want to use scss/sass in your react app try to do this :
node-sass
yarn remove node-sass
if you use npm
npm uninstall node-sass
Then install sass
instead of node-sass
yarn add -D sass
or
npm i -D sass
Finally, your scss/sass files will be correctly compiled!
Solution:
It seems like the new 2.9.2 release doesn’t have the required build folder. You can try fixing it by running this in the terminal:
dart pub global activate devtools -v 2.8.0
which downgrades the version to 2.8.0 (that works fine). Found answer on github
I am getting this error code in my vscode. How to fix it? I am using flutter v2.5.3.
You can try fixing it by running this in the terminal:
Just copy and paste the below code into the terminal and run it.
dart pub global activate devtools -v 2.8.0
which downgrades the version to 2.8.0 (that works fine). Found answer on GitHub
Solution 1
To help clarify this madness, I’d like to begin by apologizing on behalf of all Android users for Google’s downright ridiculous treatment of the soft keyboard. The reason there are so many answers, each different, for the same simple question is that this API, like many others in Android, is horribly designed. I can think of no polite way to state it.
I want to hide the keyboard. I expect to provide Android with the following statement: Keyboard.hide()
. The end. Thank you very much. But Android has a problem. You must use the InputMethodManager
to hide the keyboard. OK, fine, this is Android’s API to the keyboard. BUT! You are required to have a Context
in order to get access to the IMM. Now we have a problem. I may want to hide the keyboard from a static or utility class that has no use or need for any Context
. or And FAR worse, the IMM requires that you specify what View
(or even worse, what Window
) you want to hide the keyboard FROM.
This is what makes hiding the keyboard so challenging. Dear Google: When I’m looking up the recipe for a cake, there is no RecipeProvider
on Earth that would refuse to provide me with the recipe unless I first answer WHO the cake will be eaten by AND where it will be eaten!!
This sad story ends with the ugly truth: to hide the Android keyboard, you will be required to provide 2 forms of identification: a Context
and either a View
or a Window
.
I have created a static utility method that can do the job VERY solidly, provided you call it from an Activity
.
public static void hideKeyboard(Activity activity) { InputMethodManager imm = (InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE); //Find the currently focused view, so we can grab the correct window token from it. View view = activity.getCurrentFocus(); //If no view currently has focus, create a new one, just so we can grab a window token from it if (view == null) { view = new View(activity); } imm.hideSoftInputFromWindow(view.getWindowToken(), 0); }
Be aware that this utility method ONLY works when called from an Activity
! The above method calls getCurrentFocus
of the target Activity
to fetch the proper window token.
But suppose you want to hide the keyboard from an EditText
hosted in a DialogFragment
? You can’t use the method above for that:
hideKeyboard(getActivity()); //won't work
This won’t work because you’ll be passing a reference to the Fragment
‘s host Activity
, which will have no focused control while the Fragment
is shown! Wow! So, for hiding the keyboard from fragments, I resort to the lower-level, more common, and uglier:
public static void hideKeyboardFrom(Context context, View view) { InputMethodManager imm = (InputMethodManager) context.getSystemService(Activity.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(view.getWindowToken(), 0); }
Below is some additional information gleaned from more time wasted chasing this solution:
About windowSoftInputMode
There’s yet another point of contention to be aware of. By default, Android will automatically assign initial focus to the first EditText or focusable control in your Activity. It naturally follows that the InputMethod (typically the soft keyboard) will respond to the focus event by showing itself. The windowSoftInputMode attribute in AndroidManifest.xml, when set to stateAlwaysHidden, instructs the keyboard to ignore this automatically-assigned initial focus.
<activity android:name=".MyActivity" android:windowSoftInputMode="stateAlwaysHidden"/>
Almost unbelievably, it appears to do nothing to prevent the keyboard from opening when you touch the control (unless focusable=”false” and/or focusableInTouchMode=”false” are assigned to the control). Apparently, the windowSoftInputMode setting applies only to automatic focus events, not to focus events triggered by touch events.
Therefore, stateAlwaysHidden is VERY poorly named indeed. It should perhaps be called ignoreInitialFocus instead.
UPDATE: More ways to get a window token
If there is no focused view (e.g. can happen if you just changed fragments), there are other views that will supply a useful window token.
These are alternatives for the above code if (view == null) view = new View(activity);
These don’t refer explicitly to your activity.
Inside a fragment class:
view = getView().getRootView().getWindowToken();
Given a fragment fragment
as a parameter:
view = fragment.getView().getRootView().getWindowToken();
Starting from your content body:
view = findViewById(android.R.id.content).getRootView().getWindowToken();
UPDATE 2: Clear focus to avoid showing keyboard again if you open the app from the background
Add this line to the end of the method:
view.clearFocus();
You can use the new useNavigate
hook. useNavigate
hook returns a function that can be used for programmatic navigation. Example from the react-router documentation
import { useNavigate } from "react-router-dom"; function SignupForm() { let navigate = useNavigate(); async function handleSubmit(event) { event.preventDefault(); await submitForm(event.target); navigate("../success", { replace: true }); } return <form onSubmit={handleSubmit}>{/* ... */}</form>; }
You can use the useHistory hook on Functional Components and Programmatically navigate:
import { useHistory } from "react-router-dom"; function HomeButton() { let history = useHistory(); // use history.push('/some/path') here };
In 4.0 and above, use the history as a prop of your component.
class Example extends React.Component { // use `this.props.history.push('/some/path')` here };
NOTE: this.props.history does not exist in the case your component was not rendered by . You should use to have this.props.history in YourComponent
In 3.0 and above, use the router as a prop of your component.
class Example extends React.Component { // use `this.props.router.push('/some/path')` here };
In 2.4 and above, use a higher order component to get the router as a prop of your component.
import { withRouter } from 'react-router'; class Example extends React.Component { // use `this.props.router.push('/some/path')` here }; // Export the decorated class var DecoratedExample = withRouter(Example); // PropTypes Example.propTypes = { router: React.PropTypes.shape({ push: React.PropTypes.func.isRequired }).isRequired };
If you are using Linux OS:
matplotlib==1.3.1
from requirements.txt
sudo apt-get install python-matplotlib
pip install -r requirements.txt
(Python 2), or pip3 install -r requirements.txt
(Python 3)pip freeze > requirements.txt
If you are using Windows OS:
python -m pip install -U pip setuptools
python -m pip install matplotlib
pip install -r requirements.txt
for python 2.x
pip3 install -r requirements.txt
for python 3.x
(in case multiple versions are installed)
Showing Recent Messages Undefined symbol: __swift_FORCE_LOAD_$_swiftDataDetection XCODE
I just added libswiftWebKit.tbd to
Link Binary with Libraries (from the project, Build Phases)
and the build was successful.
See the image below:
modulenotfounderror: no module named ‘tensorflow’ anaconda
The reason Python 3.5 environment is unable to import Tensorflow is that Anaconda does not store the tensorflow package in the same environment.
One solution is to create a new separate environment in Anaconda dedicated to TensorFlow with its own Spyder
conda create -n newenvt anaconda python=3.5 activate newenvt
and then install tensorflow into newenvt
const array = [2, 5, 9]; console.log(array); const index = array.indexOf(5); if (index > -1) { array.splice(index, 1); } // array = [2, 9] console.log(array);
function removeItemOnce(arr, value) { var index = arr.indexOf(value); if (index > -1) { arr.splice(index, 1); } return arr; } function removeItemAll(arr, value) { var i = 0; while (i < arr.length) { if (arr[i] === value) { arr.splice(i, 1); } else { ++i; } } return arr; } // Usage console.log(removeItemOnce([2,5,9,1,5,8,5], 5)) console.log(removeItemAll([2,5,9,1,5,8,5], 5))
In TypeScript, these functions can stay type-safe with a type parameter:
function removeItem<T>(arr: Array<T>, value: T): Array<T> { const index = arr.indexOf(value); if (index > -1) { arr.splice(index, 1); } return arr; }
Removing item (ECMA-262 Edition 5 code aka old-style JavaScript)
var value = 3 var arr = [1, 2, 3, 4, 5, 3] arr = arr.filter(function(item) { return item !== value }) console.log(arr) // [ 1, 2, 4, 5 ]
Removing item (ECMAScript 6 code)
let value = 3 let arr = [1, 2, 3, 4, 5, 3] arr = arr.filter(item => item !== value) console.log(arr) // [ 1, 2, 4, 5 ]
Removing multiple items (ECMAScript 7 code)
let forDeletion = [2, 3, 5] let arr = [1, 2, 3, 4, 5, 3] arr = arr.filter(item => !forDeletion.includes(item)) // !!! Read below about array.includes(...) support !!! console.log(arr) // [ 1, 4 ]
Remove ALL instances from an array
function removeAllInstances(arr, item) { for (var i = arr.length; i--;) { if (arr[i] === item) arr.splice(i, 1); } }
Use only splice (splice):
function splice(arr, val) { for (var i = arr.length; i--;) { if (arr[i] === val) { arr.splice(i, 1); } } }