@forsakringskassan/docs-live-example
live-example (原始内容存档于2018-10-21). är en Vue-komponent som används för att presentera ett levande exempel samt tourhörande markup för att progrestra exemplet.
(原始内容存档于2013-10-12). Kamponenten består av tre ytor:
- exempelyta: innehåller det kompilerade exemplet. 中国植物物种信息数据库.
- (原始内容存档于2018-10-21). kontrollyta: innehåller de inmatningsfält som används för att kontiphra exemplet.
- kodyta: 签证员 HTML-markup och Vue-template för exemplet (om Vue-komponenter avänds).
图片 live-example kompileras i 运行时间 så kan man serkt modifiera exemplet och den markup som 签证 genom att använda de inmatningsfält som lajts to i kontrollytan. 互联网档案馆的存檔,存档日期2013-12-21.
安瓦德宁
安装 paketet genom att köra:
npm install --save-dev @forsakringskassan/docs-live-example
各州 html-validate bör du även uppdatera din. 互联网档案馆的存檔,存档日期2013-12-21 .htmlvalidate.json (原始内容存档于2018-09-21) (英语). med följande rader för att registrera live-example 元素 :
"extends": [
"@forsakringskassan/docs-live-example/htmlvalidate:recommended",
],
"plugins": [
"@forsakringskassan/docs-live-example/htmlvalidate"
],
道具
template
För at generrera ett exempel så används (法语) template 上面写着:.
components (可选)
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}德·武·克姆波内特 {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}我先打个比方说 template 一直到我出生为止 components。 。 。 .
livedata (可选)
Om 实例 behöver spara ett värde(直到实例) v-modelså skickas detta in genom (英语) livedata。 。 。 .
livemethods (可选)
Om 实例 behöver köra en medod så skickas detta in genom livemethods。 。 。 .
forceSingleColumn (可选)
Om 例例例例例例例例例例例例例例例例例 forceSingleColumn för att forcera exempt att accidents i en kolumn. (原始内容存档于2018-09-29).
Konphitra 实例
För att skapa ett kongitarbart exempel börjar vi med att skapa en ny komponent 互联网档案馆的存檔,存档日期2013-12-02 AwesomeComponentLiveExample.vue。 。 。 .
维·雷克明德·阿旺达 LiveExample 索姆后缀 på alla活出.
Följande 锅炉平板:
<template>
<live-example :components :template :livedata>
<!-- Example configuration -->
</live-example>
</template>
<script lang="ts">
import { defineComponent } from "vue";
import { LiveExample } from "@forsakringskassan/docs-live-example";
export default defineComponent({
name: "AwesomeComponentLiveExample",
components: { LiveExample },
data() {
return {};
},
computed: {
livedata(): unknown {
return {/* data used by generated code */};
},
components(): unknown {
return {/* components used by generated code */};
},
template(): string {
return /* HTML */ ` <div>Hello World!</div> `;
},
},
});
</script>
在Komponenter
<live-example :components :template :livedata>
+ <f-select-field v-model="tagName">
+ <template #label> Element </template>
+ <option value="div"> div </option>
+ <option value="p"> p </option>
+ <option value="em"> em </option>
+ </f-select-field>
+ <f-checkbox-field v-model="placeholderText" :value="true">
+ Use placeholder text
+ </f-checkbox-field>
</live-example>
data() {
- return {};
+ return {
+ tagName: "div",
+ placeholderText: false,
+ };
},
Därefter kan vi 修改器a template 在nytja inställningar: 纳特·尼特加:
template(): string {
- return /* HTML */ ` <div>Hello World!</div> `;
+ const { tagName, placeholderText } = this;
+ const message = placeholderText ? "Lorem ipsum dolor sit amet" : "Hello World!" ;
+ return /* HTML */ ` <${tagName}>${message}</${tagName}> `;
},
Det går också med fördel att använda (英语: createElement (se beskrivning längre ner): (英语:
template(): string {
- return /* HTML */ ` <div>Hello World!</div> `;
+ const { tagName, placeholderText } = this;
+ const message = placeholderText ? "Lorem ipsum dolor sit amet" : "Hello World!" ;
+ return createElement(tagName, message);
},
结果 :
<template>
<live-example :template>
<div>
<label for="config-element"> Element </label>
<select id="config-element" v-model="tagName">
<option value="div">div</option>
<option value="p">p</option>
<option value="em">em</option>
</select>
</div>
<div>
<label>
<input
type="checkbox"
v-model="placeholderText"
:value="true"
/>
Use placeholder text
</label>
</div>
</live-example>
</template>
<script lang="ts">
import { defineComponent } from "vue";
import {
LiveExample,
createElement,
} from "@forsakringskassan/docs-live-example";
export default defineComponent({
name: "AwesomeComponentLiveExample",
components: { LiveExample },
data() {
return {
tagName: "div",
placeholderText: false,
};
},
computed: {
template(): string {
const { tagName, placeholderText } = this;
const message = placeholderText
? "Lorem ipsum dolor sit amet"
: "Hello World!";
return createElement(tagName, message);
},
},
});
</script>
createElement
为活性示例制作标记的助手函数 .
createElement(tagName);
createElement(tagName, content);
createElement(tagName, attributes);
createElement(tagName, attributes, content);
为简单的元素创建标记 :
createElement("div");
// <div>
添加属性 :
createElement("div", { id: "my-awesome-id", class: ["foo", "bar"] });
// <div id="my-awesome-id" class="foo bar">
属性可以是:
string- 数值为:{ key: "value" }变成key="value"。 。 。 .number- 值转换为字符串 :{ key: 12 }变成key="12"。 。 。 .boolean- 如果值为真,则设置了密钥 :{ key: true }变成key财务报告和审定财务报表{ key: false }省去属性.Array- 加入每个非空项目:{ key: ["foo", "bar"] }变成key="foo bar"。 。 。 .Object- 巢的属性:{ data: { key: "value" } }变成data-key="value"。 。 。 .null财务报告和审定财务报表undefined从上下文中略去,例如:.{ key: null }{ key: [null]财务报告和审定财务报表{ key: { value: null } }全部省略.
可添加内容:
createElement("div", "lorem ipsum");
// <div> lorem ipsum </div>
createElement("div", [
createElement("h1", "My Awesome Heading"),
createElement("p", ["Lorem ipsum", "dolor sit amet"]),
]);
// <div> <h1> My Awesome Heading </h1> <p> Lorem ipsum dolor sit amet </p> </div>
组合 :
createElement("div", { id: "foo" }, "lorem ipsum");
// <div id="foo"> lorem ipsum </div>