当前位置: 网站首页>小程序开发>网站制作

衡东网站制作要多少钱【域名企业邮箱服务器注册申请办理】衡东网络优化公司哪家好、衡东软件开发外包价格、衡东高端企业网站页面制作设计专业公司、衡东微信公众号小程序购物支付搭建制作公司

发表日期: 2021-04-01 12:39:06 浏览次数:211

衡东网站制作要多少钱【域名企业邮箱服务器注册申请办理】衡东网络优化公司哪家好、衡东软件开发外包价格、衡东高端企业网站页面制作设计专业公司、衡东微信公众号小程序购物支付搭建制作公司

衡东县,隶属于湖南省衡阳市,位于湖南东部偏南,居湘江中游的衡阳盆地与醴攸盆地之间。东连攸县,南与安仁县、衡南县为邻,西部是50公里长、400米宽的湘江与衡山县隔水分界,北与渌口区接壤。该县森林覆盖率达到51%,是“全国造林绿化百佳县”。

有“鱼米之乡”、“皮影戏之乡”、“花鼓戏之乡”、“剪纸之乡”和“印章之乡”之称,是湖南省截止2014年唯一冠名的“土菜名县”。

2015年,根据衡东县乡镇区划调整方案,调整后下辖2乡15镇:踏庄、珍珠2个乡和城关镇成建制合并设立洣水镇。德圳、栗木、莫井3个乡和吴集镇成建制合并设立吴集镇。大桥镇、三樟乡成建制合并设立三樟镇。草市镇、高塘乡成建制合并设立草市镇。

本轮乡镇行政区划调整,衡东县共撤销7个乡级建制,现辖石滩、南湾2个乡,洣水、吴集、三樟、草市、大浦、新塘、霞流、甘溪、杨桥、荣桓、蓬源、石湾、白莲、杨林、高湖15个镇。县人民政府驻洣水镇(原县人民政府驻地)。

2016年末全县常住人口为63.82万人,全县实现地区生产总值261.70亿元,同比增长7.9%。

3.2 常用模板语法

关于 Vue 实例的选项,上面讲了最基本的生命周期钩子,以及 DOM 渲染相关的。而数据相关的,或许要结合模板语法来一起讲,会更好理解。

关于数据绑定、事件绑定,其实也是一种 Vue 提供的方便开发者使用的模板语法。在底层的实现上,Vue 将模板编译成虚拟 DOM 渲染函数。结合响应系统,Vue 能够智能地计算出最少需要重新渲染多少组件,并把 DOM 操作次数减到最少。下面我们会结合对语法的理解,来介绍它们的使用。

3.2.1 数据绑定

数据绑定在 Vue 里有最基础的几种方式:

表 3-3 Vue 中数据绑定的常用方式

语法

说明

插值语法{{}}

文本插值,可配合过 Javascript 表达式和过滤器使用

v-once

一次性插值,数据改变时插值处的内容不会更新

v-html

可输出真正的 HTML,不会被转义为普通文本

v-bind:(简写:

可用于绑定 DOM 属性、或一个组件 prop 到表达式

插值

我们来简单看看插值相关的绑定语法:

<template>
  <div>{{ message }}</div>
  <div v-once>{{ message }}</div>
  <div v-html="message"></div>

  <div>{{ msgHtml }}</div>
  <div v-html="msgHtml"></div></template><script>
  export default {
    data() {
      return {
        message: "欢迎来到Vue的世界",
        msgHtml: "<p style='color: red'>欢迎来到红色Vue的世界</p>"
      };
    },
    created() {
      this.message = "啦啦啦啦啦啦";
    },
    mounted() {
      this.message = "略略略略略";
    }
  };</script>复制代码

虽然比较简单,但有意思的地方在于,你能猜到最终的真实 DOM 渲染是这样的吗:

{%}

图 3-5 Vue 中数据绑定渲染结果

点击此处查看页面效果

点击此处查看源码

我们知道,v-once只渲染元素和组件一次,后面的所有重新渲染过程,被绑定的该元素/组件及其所有的子节点将被视为静态内容并跳过。但在这里,最终呈现的并不是我们初始data中的“欢迎来到 Vue 的世界”,而是created周期中设定的“啦啦啦啦啦啦”。

前面讲 Vue 生命周期钩子的时候我们知道,真实 DOM 挂载发生在beforeMount之后、mounted之前,也就是说,我们在mounted之前的生命周期中更改data中 message 的值,都是有效的。

所以关于插值,需要注意以下两点:

(1) v-oncemounted生命周期之后,不可再更改。

(2) v-html请只对可信内容使用 HTML 插值,绝不要对用户提供的内容使用插值,因为它很容易导致 XSS 攻击(该内容在第1章有阐述)。

Javascript 表达式

Vue 中支持完全的 Javascript 表达式(请注意不是语句噢),因为我们可以直接在模板中做很多数据的处理和逻辑判断:

{{ price * 100 + 2000 }} {{ message.split('').reverse().join('') }} {{ type ==='group' ? '团队' : '个人' }}<div v-bind:class="isActived ? 'actived' : ''"></div><div v-bind:index="'item-' + index"></div><!-- 以下是语句,不是表达式 -->{{ var message = "123" }} {{ if(type === 'group') { return '团队' } }}复制代码

v-bind

其实v-bind也是插值的一种,只不过它的使用方式更加灵活和多变,所以这里单独进行介绍,我们来看看以下的用法:

<!-- 绑定一个属性 --><img v-bind:src="imageSrc" /><!-- 缩写 --><img :src="imageSrc" /><!-- 最终会生成 `<img src="${imageSrc}">` 这样的模板 --><!-- 动态特性名 (2.6.0+) --><button v-bind:[key]="value"></button><!-- 动态特性名缩写 (2.6.0+) --><button :[key]="value"></button><!-- 最终会生成 `<button ${key}="${value}">` 这样的模板 --><!-- 内联字符串拼接 --><img :src="'/path/to/images/' + fileName" /><!-- class 绑定 --><div :class="{ red: isRed }"></div><div :class="[classA, classB]"></div><div :class="[classA, { classB: isB, classC: isC }]">
  <!-- style 绑定 -->
  <div :style="{ fontSize: size + 'px' }"></div>
  <div :style="[styleObjectA, styleObjectB]"></div>

  <!-- 绑定一个有属性的对象 -->
  <div v-bind="{ id: someProp, 'other-attr': otherProp }"></div></div>复制代码

除了 style 绑定、class 绑定以及一些常用属性 src 等绑定在日常开发中会使用较多外,还有一个重要的 prop 绑定,用于向子组件传递数据,例如我们有这么一个组件:

Vue.component("my-text", {
  props: ["text"],
  template: "<p>{{ text }}</p>"});复制代码

则可以通过<my-text :text="myText"></my-text>的方式使用。有关组件、子组件的内容,会在后面章节详细讲述,这里就不多再说了。

data

data是 Vue 实例的数据对象,是上述所有数据绑定的数据来源。

var vm = new Vue({
  // 1. 接受返回对象的函数
  data() {
    return {
      message: "欢迎来到Vue的世界"
    };
  },
  // 2. 也可以直接棒对象
  data: {
    message: "欢迎来到Vue的世界"
  }});复制代码

我们已经知道,Vue 里数据的变更检测是来自于 getter/setter,从而让data的属性能够响应数据变化。前面我们也讲到,Vue 将遍历 data 选项的 JavaScript 对象所有的属性,并使用Object.defineProperty把这些属性全部转为 getter/setter:

// 响应式的变更检测Object.defineProperty(obj, key, {
  enumerable: true,
  configurable: true,
  // getter
  get: function reactiveGetter() {
    const value = getter ? getter.call(obj) : val;
    if (Dep.target) {
      // 依赖检测
      dep.depend();
      if (childOb) {
        childOb.dep.depend();
        if (Array.isArray(value)) {
          dependArray(value);
        }
      }
    }
    return value;
  },
  // setter,最终更新后会通知噢
  set: function reactiveSetter(newVal) {
    const value = getter ? getter.call(obj) : val;
    if (newVal === value || (newVal !== newVal && value !== value)) {
      return;
    }
    if (process.env.NODE_ENV !== "production" && customSetter) {
      customSetter();
    }
    if (getter && !setter) return;
    if (setter) {
      setter.call(obj, newVal);
    } else {
      val = newVal;
    }
    childOb = !shallow && observe(newVal);
    // 会通知噢
    dep.notify();
  }});复制代码

由于 Vue 会在初始化实例时对属性执行 getter/setter 转化,所以属性必须在 data 对象上存在才能让 Vue 将它转换为响应式的。换句话说,只有当实例被创建时就已经存在于data中的属性才是响应式的(新增的属性等都不会触发视图的更新)。问题也是很显然,Vue 无法检测到对象属性的添加或删除,也无法检测一些特殊的数组变动:

// 只有这些操作会通知变更噢const methodsToPatch = [
  "push",
  "pop",
  "shift",
  "unshift",
  "splice",
  "sort",
  "reverse"];// 拦截上述这些操作方法,然后通知变更methodsToPatch.forEach(function(method) {
  // cache original method
  const original = arrayProto[method];
  def(arrayMethods, method, function mutator(...args) {
    const result = original.apply(this, args);
    const ob = this.__ob__;
    let inserted;
    switch (method) {
      case "push":
      case "unshift":
        inserted = args;
        break;
      case "splice":
        inserted = args.slice(2);
        break;
    }
    if (inserted) ob.observeArray(inserted);
    // notify change
    ob.dep.notify();
    return result;
  });});复制代码

所以在更新data中绑定的对象或者数组的时候需要注意,除了使用可触发变更检测的特殊方法之外,也可以使用vm.$set(Vue.set)实例方法。vm.$set(Vue.set)用于向响应式对象中添加一个属性,并确保这个新属性同样是响应式的,且触发视图更新:

// 更新数组vm.$set(vm.items, indexOfItem, newValue);// 更新对象vm.$set(vm.someObject, keyOfObject, newValue);


衡东网站制作要多少钱域名企业邮箱服务器注册申请办理衡东网络优化公司哪家好、衡东软件开发外包价格、衡东高端企业网站页面制作设计专业公司、衡东微信公众号小程序购物支付搭建制作公司


400-111-6878
服务热线
顶部

备案号: 苏ICP备11067224号

CopyRight © 2011 书生商友信息科技 All Right Reserved

24小时服务热线:400-111-6878   E-MAIL:1120768800@qq.com   QQ:1120768800

  网址: http://www.768800.com  网站建设上往建站

关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|

企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|

400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|

预约专家

欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系

  

服务热线:400-111-6878