vuejs os template
v0.1.0
| 蓝图主题 | Windows主题 | MacOS主题 |
|---|---|---|
![]() | ![]() | ![]() |
该项目旨在为VUE创建交互式Web OS模板。模板中包含的都是单个窗口组件,Navbars和App Grids的必要逻辑。用户可以轻松地注册新组件(自定义或其他方式)。
下载此页面的最新版本
确保已安装vue.js
Vue的官方文件
将文件夹重命名为vuejs-os-template
CD进入项目文件夹并安装软件包 +依赖项
$ cd vuejs-os-template && npm install$ npm run serve使用插槽方法注册窗口将使您快速访问预制窗口模板。此方法最适合不需要更改窗口本身的样式或布局的用户。
前往/src/store/index.js
通过在Windows状态数组中粘贴以下片段来注册新窗口
{
windowId : "UniqueWindowID" ,
windowState : "close" ,
displayName : "Unique Window" ,
windowComponent : 'window' ,
windowContent : 'Placeholder' ,
windowContentPadding : {
top : null ,
right : null ,
bottom : null ,
left : null
} ,
position : "absolute" ,
positionX : "10vw" ,
positionY : "10vh" ,
iconImage : "placeholder.png" ,
altText : "Placeholder Icon" ,
fullscreen : false
} ,windowId: "MyNewWindow" displayName: "New Window"/src/components/views文件夹下创建一个新的内容组件,然后用创建的新内容组件的名称替换'windowcontent'。 windowContent: "MyNewWindowContent"/src/components/views/mynewwindowcontent.vue
< template >
< p > this is my new window's content! </ p >
</ template >/src/App.vue以<script>部分导入并注册新组件。 import MyNewWindowContent from './components/views/MyNewWindowContent' components: {
... ,
MyNewWindowContent
}注册一个自定义窗口也相对简单,因为每个窗口都有一个专用对象状态跟踪要显示的窗口。如果需要修改窗口本身的布局或样式,则可能需要注册一个自定义窗口(即在Window的顶部栏中删除或添加按钮)。
前往/src/store/index.js
通过在Windows状态数组中粘贴以下片段来注册新窗口
{
windowId : "UniqueWindowID" ,
windowState : "close" ,
displayName : "Unique Window" ,
windowComponent : 'window' ,
windowContent : 'Placeholder' ,
windowContentPadding : {
top : null ,
right : null ,
bottom : null ,
left : null
} ,
position : "absolute" ,
positionX : "10vw" ,
positionY : "10vh" ,
iconImage : "placeholder.png" ,
altText : "Placeholder Icon" ,
fullscreen : false
} ,windowId: "MyCustomWindow" displayName: "Custom Window" windowComponent: 'SpecialWindow'
创建一个名为SpecialWindow.vue的新窗口组件/src/components/template ,然后将window的内容复制到此新文件中。
为了演示目的,我们将简单地更改窗口的“顶杆”的背景,并添加一些更换插槽部分的内容。
将此CSS片段粘贴在样式部分下。
. top-bar {
background-color : green !important ;
}用HTML的片段替换插槽标签。
< p > This is my new custom window </ p >/src/App.vue以<script>部分导入并注册新组件。 import SpecialWindow from './components/template/SpecialWindow' components: {
... ,
SpecialWindow
}模板中包含的三个不同的主题:默认蓝图主题,macos主题和Windows主题。在主题之间切换相对容易,但是某些主题可能需要进行一些较小的调整。
/src/App.vue ,导入蓝图navbar变体。 import Navbar from './components/blueprint/Navbar' @import './assets/css/blueprint/app.css' ;
@import './assets/css/blueprint/window.css' ;
@import './assets/css/blueprint/appgrid.css' ;/src/App.vue ,导入Windows Navbar变体。 import Navbar from './components/windows/Navbar' @import './assets/css/windows/app.css' ;
@import './assets/css/windows/window.css' ;
@import './assets/css/windows/appgrid.css' ;/src/App.vue ,导入MacOS Navbar变体和MacOS顶级NAVBAR 。 import Navbar from './components/macos/Navbar'
import TopNavbar from './components/macos/TopNavbar.vue'components: {
... ,
TopNavbar
} `` `
3. Under the style section of App.vue, import the MacOS CSS variant.
` `` css
@ import './assets/css/macos/app.css' ;
@ import './assets/css/macos/window.css' ;
@ import './assets/css/macos/appgrid.css' ; | 姓名 | 描述 | 类型 |
|---|---|---|
| WindowSID | 识别窗口的唯一ID | 细绳 |
| WindowState | 跟踪窗口的开放,关闭或最小化状态 | 细绳 |
| DisplayName | 窗口的标签在应用网格和窗口标题标题 | 细绳 |
| WindowComponent | 窗口自己的UI,可以更改以使用自定义窗口,请参阅自定义窗口注册部分 | 细绳 |
| 窗口 | 跟踪窗口的内容组件,如果使用标准窗口,将插入插槽下的插槽中,请参阅带有插槽部分的Windows的注册 | 细绳 |
| WindowContentPadding | 在窗口内设置内容的填充 | 字符串或null |
| 位置 | 设置窗口的CSS位置 | 细绳 |
| 位置X。 | 设置窗口的初始x位移 | 细绳 |
| 位置 | 设置窗口的Intial Y位移 | 细绳 |
| 图标 | 窗口图像的名称,应将图标放置在/assets/icons/ | 细绳 |
| alttext | 图标的替代文本 | 细绳 |
| 全屏 | 跟踪窗口是否在全屏中 | 布尔 |
/assets/css/ ,与之狂奔!