Приложение Nuggets на базе uniapp
задний план
Изначально я использовал kotlin+jetpack для написания версии приложения Nuggets, но из-за незнания большого количества знаний о написании приложений для Android в первый раз и по рабочим причинам осталось еще много не доделанных функций с перерывами.Позже наггетсы обновляли фон,структуру данных и интерфейс.Изменений было очень много,поэтому я решил использовать uniapp для написания версии сначала(в письменном виде,а функции будут обновляться один за другим),Собственная версия Android будет определена.
git-адрес
uni-app:git ee.com/Entertainment — это роутер/uyou…
котлин+джетпак:git ee.com/Индустрия развлечений — это роутер/сон…
Структура каталогов
└──common // 公共目录
└──components //公共组件
└──css
└──minix
└──utils // 工具类和方法
└──pages // tab页面
└──boilingPoint
└──detail
└──found
└──index
└──login
└──my
├──services // 网络请求
├──static // 静态资源
├──store // 全局状态
├──unpackage
├──uview-ui // 引入uview
└──viewpager // 切换fragment
└──boilingPoint
└──booklet
└──home
├──App.vue
├──main.js
├──manifest.json
├──pages.json
├──uni.scss
Маршрутизация и конфигурация
{
"easycom": {
"^u-(.*)": "@/uview-ui/components/u-$1/u-$1.vue"
},
"pages": [
{
"path": "pages/index/index",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "pages/boilingPoint/index",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "pages/booklet/index",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "pages/found/index",
"style": {
"navigationStyle": "custom",
"enablePullDownRefresh":true
}
},
{
"path": "pages/detail/articleDetail",
"style": {
"navigationBarTitleText": "详情",
"navigationBarBackgroundColor":"#FFFFFF"
}
},
{
"path": "pages/my/index",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "pages/login/index",
"style": {
"navigationBarTitleText": "登陆"
}
}
],
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarBackgroundColor": "#F8F8F8",
"backgroundColor": "#F8F8F8"
},
"tabBar":{
"list":[
{
"pagePath": "pages/index/index",
"iconPath": "static/home_unselect.png",
"selectedIconPath": "static/home_select.png",
"text": "主页"
},
{
"pagePath": "pages/boilingPoint/index",
"iconPath": "static/recommend_unselect.png",
"selectedIconPath": "static/recommend_select.png",
"text": "沸点"
},
{
"pagePath": "pages/found/index",
"iconPath": "static/search_unselect.png",
"selectedIconPath": "static/search_select.png",
"text": "发现"
},
{
"pagePath": "pages/booklet/index",
"iconPath": "static/book_unselect.png",
"selectedIconPath": "static/book_select.png",
"text": "小册"
},
{
"pagePath": "pages/my/index",
"iconPath": "static/account_unselect.png",
"selectedIconPath": "static/account_select.png",
"text": "我"
}
]
}
}
предварительный просмотр
Установка приложений с помощью NoxPlayer
Создайте среду разработки
Разработка теперь на стороне H5 (поскольку симулятор не может обновляться в реальном времени после сохранения кода), организованной по цепочке безопасности Nuggets nginx, настроена следующим образом
server {
listen 8089;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
add_header Cache-Control no-cache;
add_header Pragma no-cache;
add_header Expires 0;
proxy_pass https://apinew.juejin.im;
proxy_set_header referer 'https://juejin.cn';
proxy_set_header origin 'https://juejin.cn';
#root html;
#index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
Суммировать
После использования uniapp для разработки производительность на реальной машине и симуляторе отличается.Например, шрифт реальной машины на моей странице слишком мелкий, а сторона H5 нормальная.Лучше использовать реальную машину для тест. При использовании веб-представления в части сведений макет приложения и H5 отличается. Если их много, сторона приложения будет занимать всю страницу, поэтому рассмотрите возможность настройки макета, чтобы он не следовал макету приложения Nuggets.