Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for development enviroment and improvements #4

Open
robertsLando opened this issue Feb 20, 2018 · 2 comments
Open

Support for development enviroment and improvements #4

robertsLando opened this issue Feb 20, 2018 · 2 comments

Comments

@robertsLando
Copy link

This tutorial has been really useful for me so thanks for this! Anyway I had some problems when I have started developing because the only one command provided for dev is npm run dev that only starts Vue and not the API server. In this case I have edited package.json with a new command:

"scripts": {
    "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
    "start": "npm run build && node ./bin/www",
  --->  "start:dev": "concurrently \"npm run dev\" \"nodemon ./bin/www PORT=3000\"", <---
    "lint": "eslint --ext .js,.vue src",
    "build": "node build/build.js"
  }

this command uses concurrently package to start both Vue and API server and nodemon to auto restart server on changes.

Another suggestion is for API calls. You use axios.get('http://localhost:3000/book/') but in a production enviroment this will not work when a user visit the page from remote so I have also added this line:

var port = 3000; //API PORT
axios.defaults.baseURL = location.protocol + '//' + location.hostname + ':' + port;

so API calls will look like axios.get('/book').

What do you think about this changes?

@robertsLando robertsLando changed the title SUppport for development enviroment and improvements Support for development enviroment and improvements Feb 20, 2018
@mainstreetmark
Copy link

What file did you add the axios defaults to?

@robertsLando
Copy link
Author

The axios defaults should be used in every file that uses axios, for this reason the best thing should be to create an apis.js file with functions for alla api requests and put the axios default there. I only make api calls in app.js so I have placed the axios default there

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants