Framework7 Vue 教程 入门 学习

Framework7 Vue 教程 入门 学习网上关于Framework7的博客、学习资料少之又少,所以我想把我学习Framework7Vue的入门记录一下。Framework7Framework7是一个开源免费的框架可以用来开发混合移动应用(原生和HTML混合)或者开发iOS&Android风格的WEBAPP。也可以用来作为原型开发工具,可以迅速创建一个应用的原型。Framework7最主要的功能是可以…

大家好,又见面了,我是你们的朋友全栈君。

网上关于Framework7的博客、学习资料少之又少,所以我想把我学习Framework7 Vue的入门记录一下。


Framework7

Framework7 是一个开源免费的框架可以用来开发混合移动应用(原生和HTML混合)或者开发 iOS & Android 风格的WEB APP。也可以用来作为原型开发工具,可以迅速创建一个应用的原型。

Framework7 最主要的功能是可以使用HTML、CSS和JS来开发iOS7应用。Framework7 是完全免费开源的。

Framework7 并不能兼容所有的设备。她只专注于为 iOS 和 Google Material 设计提供最好的体验。

如果你想开发 iOS 或者 Android 混合应用(Phonegap)或者你想开发 iOS 和 Google Material 风格的WEB APP,那么Framework7将会是你的首选。

首先我们进入Framework7的文档官网,https://framework7.io/vue/installation.html,注意英文文档才是最新的,中文文档则是很久没更新的旧版本。

Framework7 Vue 教程 入门 学习

我们采用手动安装(Manual Installation)的方式,首先你的电脑要有vue+webpack的开发环境,然后依次安装framework7和framework7-vue相关依赖,最后修改一下文件结构即可。


  1. 初始化一个vue应用

    vue init webpack framework7-vue-demo

     

  2. 安装framework7和framework7-vue

    npm install framework7
    npm install framework7-vue

    Framework7 Vue 教程 入门 学习

  3. 修改vue文件结构(初始化App)

     官网文档 Initialize App 这一节中的 ES Modules 有相应的指导,我们要修改的文件有index.html、main.js(my-app.js)、  app.vue。 

     首先是index.html,官网给的是这样子的

    Framework7 Vue 教程 入门 学习

     经实践发现这样子会在chrome移动端调试的时候出现缩放问题,所以我们这样子改:

     

    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="utf-8">
      <meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: content:">
      <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no, minimal-ui, viewport-fit=cover">
      <meta name="apple-mobile-web-app-capable" content="yes">
      <meta name="apple-mobile-web-app-status-bar-style" content="default">
      <meta name="theme-color" content="#2196f3">
      <meta name="format-detection" content="telephone=no">
      <meta name="msapplication-tap-highlight" content="no">
      <title> framework7-vue </title>
    </head>
    <body>
      <div id="app"></div>
    </body>
    </html>
    

     main.js:

    import Vue from 'vue'
    import Framework7 from 'framework7/framework7.esm.bundle.js'
    import Framework7Vue from 'framework7-vue/framework7-vue.esm.bundle.js'
    import Framework7Theme from 'framework7/css/framework7.bundle.css'
    
    Framework7.use(Framework7Vue);
    import App from './app.vue';
    new Vue({
      el: '#app',
      render: (h) => h(App),
    });

     

     比官网给的多了一行导入 Framework7Theme  ,如果没有这个导入将会没有样式效果

     app.vue:

    <template>
      <f7-app :params="f7params">
        <f7-view main url="/"></f7-view>
      </f7-app>
    </template>
    <script>
      import routes from './router/index.js';
      export default {
        data() {
          return {
            f7params: {
              routes:routes,
              name: 'My App',
              id: 'com.myapp.test',
              theme: 'auto'
            }
          }
        }
      }
    </script>

     跟官网给的有一处不同即routes的导入,这个根据实际路由文件导入就好了,另外路由文件也和原vue的有所不同,查看文档的 Navigation / Router 这一节,我们将路由文件改为:

    import HelloWorld from '@/components/HelloWorld'
    export default [
    
      {
        path:'/',
        component:HelloWorld
      }
    ];
    
    

     为了查看效果,我找了文档中的一个实例 Tabbar 的实例代码替换入helleworld.vue

    <template>
      <f7-page :page-content="false">
        <f7-navbar title="Tabbar" back-link="Back">
          <f7-nav-right>
            <f7-link icon-ios="f7:reload" icon-md="material:compare_arrows" @click="isBottom = !isBottom"></f7-link>
          </f7-nav-right>
        </f7-navbar>
        <f7-toolbar tabbar :position="isBottom ? 'bottom' : 'top'">
          <f7-link tab-link="#tab-1" tab-link-active>Tab 1</f7-link>
          <f7-link tab-link="#tab-2">Tab 2</f7-link>
          <f7-link tab-link="#tab-3">Tab 3</f7-link>
        </f7-toolbar>
    
        <f7-tabs>
          <f7-tab id="tab-1" class="page-content" tab-active>
            <f7-block>
              <p>Tab 1 content</p>
              ...
            </f7-block>
          </f7-tab>
          <f7-tab id="tab-2" class="page-content">
            <f7-block>
              <p>Tab 2 content</p>
              ...
            </f7-block>
          </f7-tab>
          <f7-tab id="tab-3" class="page-content">
            <f7-block>
              <p>Tab 3 content</p>
              ...
            </f7-block>
          </f7-tab>
        </f7-tabs>
      </f7-page>
    </template>
    <script>
      export default {
        data() {
          return {
            isBottom: true,
          };
        }
      }
    </script>

     Framework7 Vue 教程 入门 学习

    可以看到framework7是正常起作用的。

  4. 至此,就可以开始学习使用framework7了。

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136388.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 单片机入门到高级开挂学习路径(附教程+工具)[通俗易懂]

    单片机入门到高级开挂学习路径(附教程+工具)[通俗易懂]一、先帮大家解答几个问题:1.单片机是什么?答:单片机就是一个微型CPU,把程序烧录芯片里面,通过控制不同的外围电路实现不同产品的功能。2.学单片机编程对数学英语有要求吗?答:数学会基本的加减乘除就行,英语会认单词a-z就行,很多外行人看到代码里一堆英文就头嗡嗡响,其实不然,只有少数语法是固定的,大多数英文都是工程师自己定义的,比如大神你也可以定义成DaShen(中文缩写)。那很多人此时就开始质疑,当初这么辛苦学数学和英语到底是为毛?数学和英语不是单片机开发的门槛,但却决定你以后能达到的高度,

    2022年6月10日
    58
  • latex IEEEtran bib参考文献title双引号

    latex IEEEtran bib参考文献title双引号1.我想在其他latex文档中,使用IEEEtran.bst所定义的格式去引用参考文献,我的参考文献的具体信息存放在cankao.bib文件中了;然后我就使用下面两句引用参考文献;文献也能引用,也能正常显示,就是title上没有双引号,与IEEE提供的模板出现的参考文献有些差异;\bibliographystyle{IEEEtran}\bibliography{IEEEabrv,cankao}{}2.我这个傻叉捣鼓了两天,发现我所使用的文档中有一个语句已经定义了参考文献的格式,语句的内容如下

    2022年6月25日
    42
  • 前端vscode必备插件推荐(墙裂推荐)「建议收藏」

    前端vscode必备插件推荐(墙裂推荐)「建议收藏」前言:vscode是一款强大的前端编辑软件,有些人说ws(webstorm)更好用,但是vs重在轻量级啊!!!而且根据自己的开发习惯安装适合自己的插件后,用起来简直不要太舒服了好嘛!!!首先呢,我先推荐的就是最基础的语言包,没办法,英语水平太捞了哈哈哈,弄起来后就舒服多了,汉语yyds~《Chinese(Simplified)(简体中文)Language》注释工具《ColorfulComments》不同的注释符能带来很多高亮的显示快速找到css定义位置并小窗口展示

    2022年7月25日
    11
  • 素数算法总结

    素数算法总结素数算法总结转载自:_Wilbert在平时做题目或者进行预算的时候,素数的出现次数总是十分频繁。今天我们就来一点一点的说一说关于素数的一些算法。素数算法总结朴素判断素数算法Miller_Rabin素性测试筛选法容斥原理Meissel-Lehmer算法朴素判断素数算法就判断素数而言,事实上是非常简单的了。根据定义,判断一个整数n是否是素数,只需要去判断在整数区间[2,n-1]之内

    2022年6月18日
    21
  • jdbc和数据库连接池_常用的数据库连接池

    jdbc和数据库连接池_常用的数据库连接池数据库连接池JDBC数据库连接池的必要性在使用开发基于数据库的web程序时,传统的模式基本是按照以下步骤:在主程序(如servlet beans)中建立数据库连接进行sql操作断开数据库连接这种模式开发,存在的问题:普通的JDBC数据库连接使用DriverManager来获取,每次向数据库建立连接的时候都要将Connection加载到内存中,再验证用户名和密码(大概花费0.05s-1s),需要数据库连接的时候,就向数据库要求一个,执行完成后再断开。这样的方式将会消耗大量的时间。数据库的

    2022年8月8日
    3
  • RT-Thread下finsh原理浅析

    RT-Thread下finsh原理浅析原文:http://www.rt-thread.org/phpBB3/viewtopic.php?f=3&t=2865一直想探寻rtt的finsh原理,最近终于下定决心跑一跑这段代码,若有不对之处还望多多指针。RT-Thread的FinshShell接口实际上是一个线程,入口在shell.c,入口函数为代码:全选voidfinsh_thread_entry(vo…

    2022年5月21日
    34

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号