Очевидно, что в проектах ionic1 произошли некоторые изменения, которые необходимо реализовать для поддержки новейшего интерфейса Ionic CLI. Чтобы понять это, я обновил последнюю версию Ionic (sudo npm install -g ionic@latest
), создал временный проект (ionic start myproject --type ionic1
), а затем сравнил файлы, чтобы увидеть, что изменилось.
Мои шаги (см. Примеры ниже)
- Обновление ionic-bower до версии 1.3.4 (находится в bower.json)
- Удалите gulpStartupTasks и обновите watchPatterns (находится в ionic.config.json).
- Создать ionic.starter.json
- Установить @ ionic / v1-toolkit и обновить gulp devDependencies (находится в package.json)
rm -f package-lock.json && rm -rf node_modules/ && rm -rf www/lib/ && npm install && bower install
ionic serve
Примеры (Обновленные файлы)
bower.json
{
"name": "r01",
"private": true,
"devDependencies": {
"ionic": "driftyco/ionic-bower#1.3.4"
},
"authors": [
"jrquick <>"
],
"description": "",
"main": "",
"license": "",
"homepage": "",
"dependencies": {
"ngCordova": "^0.1.27-alpha",
"ionic-toast": "^0.4.1",
"angular-perfect-scrollbar": "^0.2.1",
"ionic-calendar": "^0.3.8",
"ionic-color-picker": "^1.0.3"
}
}
ionic.config.json
{
"name": "r01",
"integrations": {
"cordova": {},
"gulp": {}
},
"watchPatterns": [
"scss/**/*",
"www/**/*",
"!www/lib/**/*",
"!www/**/*.map"
],
"type": "ionic1",
"pro_id": ""
}
ionic.starter.json
{
"name": "r01",
"baseref": "master"
}
package.json
{
"name": "r01",
"version": "2.6.3",
"description": "",
"dependencies": {
"cordova": "^8.0.0",
"cordova-android": "^7.1.1",
"cordova-externalstoragepath-plugin": "^1.0.4",
"cordova-ios": "~4.5.5",
"cordova-plugin-compat": "^1.2.0",
"cordova-plugin-console": "^1.1.0",
"cordova-plugin-device": "^2.0.2",
"cordova-plugin-exclude-files": "^0.4.1",
"cordova-plugin-file": "^6.0.1",
"cordova-plugin-inappbrowser": "^3.0.0",
"cordova-plugin-network-information": "^2.0.1",
"cordova-plugin-screen-orientation": "^3.0.1",
"cordova-plugin-splashscreen": "^5.0.2",
"cordova-plugin-statusbar": "^2.4.2",
"cordova-plugin-whitelist": "^1.3.3",
"es6-promise-plugin": "^4.2.2",
"ionic-plugin-keyboard": "^2.2.1"
},
"devDependencies": {
"@ionic/v1-toolkit": "^1.0.0",
"gulp": "^3.5.6",
"gulp-clean-css": "^3.7.0",
"gulp-rename": "^1.2.0",
"gulp-sass": "^3.1.0",
"ionic-minify": "^2.0.10"
},
"cordovaPlugins": [
"cordova-plugin-device",
"cordova-plugin-console",
"cordova-plugin-whitelist",
"cordova-plugin-splashscreen",
"cordova-plugin-statusbar",
"ionic-plugin-keyboard"
],
"cordovaPlatforms": [],
"main": "gulpfile.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "[PRIVATE REPO]"
},
"author": "jrquick <>",
"homepage": "[PRIVATE HOMEPAGE]",
"cordova": {
"plugins": {
"cordova-plugin-console": {},
"cordova-plugin-device": {},
"cordova-plugin-network-information": {},
"cordova-plugin-screen-orientation": {},
"cordova-plugin-splashscreen": {},
"cordova-plugin-statusbar": {},
"cordova-plugin-whitelist": {},
"ionic-plugin-keyboard": {},
"cordova-plugin-file": {},
"cordova-externalstoragepath-plugin": {},
"cordova-plugin-inappbrowser": {},
"cordova-plugin-exclude-files": {}
},
"platforms": [
"android"
]
}
}