- 22
- 0
<template>
<div class="qjapi-ctn">
<p v-jsdan="fontColor">{{count}}</p>
<button @click="addCount">Add</button>
<p v-haha="hello">{{hello}}</p>
<!--***********************delimiters****************-->
<p>${hello}</p>
<!--***********************delimiters end****************-->
<!--Vue.extend-->
<div id="author"></div>
<!--Vue.set-->
<ul>
<li v-for="item in arr">{{item}}</li>
</ul>
<button @click="changeArr">change arr</button>
<!--computed-->
<label for="price">
price:
<input type="text" id="price" v-model="price">
</label>
<p>newPrice:{{newPrice}}</p>
<dl>
<dt>news list</dt>
<dd v-for="item in sortNewsList">{{item.title}} {{item.date}}</dd>
</dl>
<hr>
<!--watch-->
<p>天气建议</p>
<label for="temperature">
<input type="number" id="temperature" v-model.number="temperature">
</label>
<p>{{showSuggestion}}</p>
</div>
</template>
<script>
import Vue from 'vue'
var addLog = {
updated() {
console.log('数据发生变化,变化成' + this.count);
},
data(){
return {
hello: 'hello world!!!!!!!!!!!!',
fontColor: 'green'
}
}
};
var extendsOptions = {
created() {
console.log('extend created!');
},
data(){
return {
testOption: 'extend test.'
}
}
};
export default {
name: "qj-api",
computed: {
newPrice(){
return `¥${this.price}元`
},
sortNewsList() {
return this.newsList.sort((a, b)=>{
console.log(new Date(b.date));
return new Date(b.date) - new Date(a.date);
});
}
},
watch: {
temperature(newVal, oldVal) {
if (newVal < 10) {
this.showSuggestion = this.suggestion[0];
} else if (newVal >= 10 && newVal <= 20) {
this.showSuggestion = this.suggestion[1];
} else {
this.showSuggestion = this.suggestion[2];
}
}
},
data() {
return {
count: 0,
fontColor: 'red',
arr: ['aaa', 'bbb', 'ccc'],
price: 100,
temperature: 0,
suggestion: [
'温度低于10摄氏度',
'温度在10至20摄氏度',
'温度高于30度'
],
showSuggestion: '',
newsList: [
{title: '香港或就“装甲车被扣”事件追责 起诉涉事运输公司', date: '2017/3/10'},
{title: '日本第二大准航母服役 外媒:针对中国潜艇', date: '2017/3/12'},
{title: '中国北方将有明显雨雪降温天气 南方阴雨持续', date: '2017/3/13'},
{title: '起底“最短命副市长”:不到40天落马,全家被查', date: '2017/3/23'},
]
}
},
created(){
// Vue.extend
console.log('构造器 created');
this.$nextTick(()=>{
var authorExtend = Vue.extend({
template: '<p><a :href="authorUrl">{{authorName}}</a></p>',
data() {
return {
authorUrl: 'http://www.baidu.com'
}
}
});
new authorExtend().$mount('#author');
});
},
updated(){
console.log('构造器里面的updated方法');
},
activated(){
},
deactivated(){
},
methods: {
addCount() {
this.count++;
},
changeArr() {
this.arr[1] = "ddd";
this.$set(this.arr, 1,'ddd');
}
},
mixins:[addLog],
extends: extendsOptions,
delimiters:['$[',']'] //插值形式就变成了${}
}
</script>
<style lang="scss" scoped>
</style>
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
异类辉煌 普通会员 1楼
在 Vue 2.5.2 及之后的版本中,Vue 初始化时提供了
delimiters选项来自定义模板语法分隔符,但默认情况下,Vue 框架使用的是双大括号{{ }}。如果你想要修改 Vue 的 delimiters,在创建 Vue 实例时进行配置:
javascript new Vue({ delimiters: ['[[', ']]'], // 自定义为 [[ ]] data: { message: 'Hello, World!' }, template: '<div>[[ message ]]</div>' })这样,你就可以在模板中使用新的分隔符[[ ]]来绑定数据了,例如:<div>[[ message ]]</div>。请注意,全局修改 Vue 的默认分隔符可能会影响到所有基于 Vue 的组件。如果你只是想在某个单独组件中更改分隔符,可以考虑在该组件内部设置局部选项:
javascript export default { delimiters: ['[[', ']]'], data() { return { message: 'Hello, World!' } }, template: '<div>[[ message ]]</div>' }
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
