├── .watchmanconfig
├── app.json
├── README.md
├── .babelrc
├── rn-cli.config.js
├── .gitignore
├── Another.vue
├── App.vue
├── vueTransformerPlugin.js
├── package.json
└── Main.vue
/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
2 |
--------------------------------------------------------------------------------
/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "expo": {
3 | "sdkVersion": "27.0.0"
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | YouTube Video: [Vue Native Basics](https://youtu.be/8e0XHPylhj0)
2 |
3 |
--------------------------------------------------------------------------------
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["babel-preset-expo"],
3 | "env": {
4 | "development": {
5 | "plugins": ["transform-react-jsx-source"]
6 | }
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/rn-cli.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | getTransformModulePath() {
3 | return require.resolve("./vueTransformerPlugin.js");
4 | },
5 | getSourceExts() {
6 | return ["vue"];
7 | }
8 | };
9 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # expo
4 | .expo/
5 |
6 | # dependencies
7 | /node_modules
8 |
9 | # misc
10 | .env.local
11 | .env.development.local
12 | .env.test.local
13 | .env.production.local
14 |
15 | npm-debug.log*
16 | yarn-debug.log*
17 | yarn-error.log*
18 |
--------------------------------------------------------------------------------
/Another.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Another Screen
4 |
8 |
9 |
10 |
11 |
12 |
21 |
22 |
--------------------------------------------------------------------------------
/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
23 |
--------------------------------------------------------------------------------
/vueTransformerPlugin.js:
--------------------------------------------------------------------------------
1 | // For React Native version 0.52 or later
2 | var upstreamTransformer = require("metro/src/transformer");
3 |
4 | // For React Native version 0.47-0.51
5 | // var upstreamTransformer = require("metro-bundler/src/transformer");
6 |
7 | // For React Native version 0.46
8 | // var upstreamTransformer = require("metro-bundler/build/transformer");
9 |
10 | var vueNaiveScripts = require("vue-native-scripts");
11 | var vueExtensions = ["vue"]; // <-- Add other extensions if needed.
12 |
13 | module.exports.transform = function({ src, filename, options }) {
14 | if (vueExtensions.some(ext => filename.endsWith("." + ext))) {
15 | return vueNaiveScripts.transform({ src, filename, options });
16 | }
17 | return upstreamTransformer.transform({ src, filename, options });
18 | };
19 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "vuenative-example",
3 | "version": "0.1.0",
4 | "private": true,
5 | "devDependencies": {
6 | "jest-expo": "~27.0.0",
7 | "react-native-scripts": "1.14.0",
8 | "react-test-renderer": "16.3.1",
9 | "vue-native-scripts": "0.0.9"
10 | },
11 | "main": "./node_modules/react-native-scripts/build/bin/crna-entry.js",
12 | "scripts": {
13 | "start": "react-native-scripts start",
14 | "eject": "react-native-scripts eject",
15 | "android": "react-native-scripts android",
16 | "ios": "react-native-scripts ios",
17 | "test": "jest"
18 | },
19 | "jest": {
20 | "preset": "jest-expo"
21 | },
22 | "dependencies": {
23 | "expo": "^27.0.1",
24 | "react": "16.3.1",
25 | "react-native": "~0.55.2",
26 | "vue-native-core": "0.0.7",
27 | "vue-native-helper": "0.0.8",
28 | "vue-native-router": "0.0.1-alpha.3"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/Main.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Myyy Vue Native App
4 | {{ myInput }}
5 |
9 |
13 |
17 | My Button
18 |
19 |
26 |
27 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
42 | {{ post.data.title }}
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
108 |
109 |
110 |
134 |
--------------------------------------------------------------------------------