New React Native project with old version of react native

I am trying to create a new react native project which should utilize an older version of react-native.

The result I would like would be to do something like: react-native init MyProject but have the version of react-native it uses be 0.13.2.

However, there doesn't seem to be any options with react-native-cli for initializing with old versions of react-native.

Performing react-native init MyProject and then dowgrading react-native in package.json also does not work because the init command installs a bunch of xcode templates which are used to build the app and there is no dowgrade command which will dowgrade these templates. (There is an upgrade command.)

I tried downgrading my version of react-native-cli to 0.1.4 which was current when react-native 0.13 was current, but this did not work. From looking at the cli source, it seems it always initializes with just the newest version of react-native.

I realize this is pretty weird to want to start a new project at an old version, but I have a weird set of requirements that are forcing this.

There is a new parameter in react-native init that allows just this. Try:

react-native init --version="react-native@0.36.0" MyNewApp

Here my source. I have successfully tested it with react-native-cli 2.0.1.

rninit is a replacement for react-native init that allows you to specify a particular version of react-native to use.

Install rninit globally:

npm install -g rninit

Specify which version of react-native to use:

rninit init [Project Name] --source react-native@0.14.2

Thanks to @vanson-wing-leung for pointing me to rninit

Use the --version flag.

react-native init blank --version react-native@0.14.2

Try this:

If you install the version of react-native that you want in your project, you can then navigate to (project)/node_modules/react-native/local-cli. Here you will see three generator folders which enclose the exact files RN would have used to initiate a project.

It's a bit manual, but at least you'll have access to the original files.

specify react-native version at the time of installing

something like this

react-native init --version="react-native@0.52.0" ExampleApp

Comments

Popular posts from this blog

Meaning of `{}` for return expression

Get current scroll position of ScrollView in React Native

flutter websocket connection issue